Each night, you cross your fingers that end-of-day processing will run smoothly. But the next morning you arrive to find that Sales hasn’t received their reports, Finance says their general ledger has not been updated, and warehouse inventory is out of sync. Now, you’ll spend your day searching for what went wrong while business users sit and wait for you to firefight these problems. Sound familiar?
Job scheduling seems so simple, until something goes wrong. Even the smallest change to the CL program that runs your day-end processing can echo throughout your business.
Take a few minutes to hear how Robot Schedule has helped thousands of IBM i shops like yours better manage their batch environment and eliminate scheduling headaches, including:
- Visualizing the upstream and downstream impact of adding a job
- Receiving alerts when jobs don’t perform as they should
- Using job and file events to trigger dependent processes
- Holding, skipping, or starting a job from a remote location
- Incorporating file transfers between IBM i and other servers
Robot Schedule really does simplify job scheduling. It automatically and reliably runs millions of IBM i, Windows, Linux, and AIX jobs for organizations all over the world every day, and even makes it easy for IT teams to convert from the native IBM i scheduler.
See for yourself. Watch now!
A complete transcript of the webinar is below.
Chuck: Well hello everyone, and welcome to today's webinar, Five IBM i Scheduling Pain Points, coming to you from beautiful Eden Prairie, Minnesota here in the USA. Thanks for joining us.
Chuck: So, no doubt you've either heard of Robot or encountered it at one point in your career, but we'd like to show you what it looks like today. And in the context of relieving some of the pain that we've heard from folks like you using the native scheduler, an application scheduler, or an external scheduler, or maybe homegrown. Ultimately though, not optimized for IBM i.
Chuck: My name is Chuck Losinkski, I'm the Director of Technical Solutions at HelpSystems. I've been at HelpSystems about 20 years now, and I've spent a lot of time with this guy next to me, Mr. Tom Huntington.
Tom: We do spend a lot of time together. Great to be working with you again today Chuck. I'm Tom, and I'm our EVP of Technical Solutions at HelpSystems, and yes, I've been with HelpSystems for three decades now. That sounds a little friendlier than 30 years.
Tom: And I'm also an IBM Power Champion, so I do work fairly closely with the executives that are in charge of the Power platform, a good portion of them being out of Austin, Texas these days, but excited to be here with you.
Chuck: Yeah. And we are recording today's presentation. You'll get a link to the recording, you'll get some additional collateral, and of course, if you have any questions today, feel free to send those into us. And if we don't get to the question during our time today, of course we'll absolutely follow up with you as time allows a little bit later today.
Chuck: We are going to be focusing on the automated job scheduling here in the upper-left-hand corner of the screen. Robot Schedule, Schedule Enterprise, we aren't going to spend a lot of time with Robot Replay today, but we will talk a little bit about it. And certainly, we're going to talk about alerting. As you can see, our product line, the Robot product line has expanded a little bit, if it's been a while since you've looked at it.
Chuck: So for instance, under high availability and backup, we now have a high availability tool called Robot HA data replication, upper-right hand corner under performance monitoring we have a new product called Robot Monitor if we're doing performance application and system monitoring. Capacity planning and analysis, you'll see performance navigator is now part of our repertoire as well.
Chuck: Tom, any comments?
Tom: It's exciting having all these new tools to be able to share with people, and they all have their place, right? Some of them are complementary, some of them have a little overlap between some of the performance area, like sizing systems and those kinds of things is really kind of a fun process that we can now help you out with. Or through services, if you're ever having any kind of performance issue on IBM i, we can certainly do troubleshooting for you.
Chuck: Yeah, exactly. All right, so let's focus now. Let's focus in a little bit. We're going to talk today about automated job scheduling. We're going to talk about some of the batch processing pain points on IBM i, and how Robot Schedule can relieve some of that pain.
Chuck: I remember that commercial on TV, you know? I think it was Excedrin or something. The pain reliever. The pain relief. So hopefully, we can get there with you.
Chuck: So to reflect back a little bit on the development of Robot Schedule over the years, Robot Schedule started out as the batch processing automation tool for AS/400. Even prior to AS/400, but-
Chuck: System/38, AS/400, iSeries, now IBM i. Over the years, we developed some specific interfaces for JD Edwards or Oracle EnterpriseOne and SAP.
Chuck: Robot Replay is the interactive green screen automation tool that works with Robot Schedule to integrate batch and interactive into the same job flow, and then we added multiplatform scheduling into Robot Schedule called Robot Schedule Enterprise, Windows Linux, AIX, integrates FTP processes, Microsoft SQL Server, and an automation tool called Automate, which is part of our product line for enabling RPA or robotic process automation off there in the Windows world. And that's a really exciting tool, we talk about doing things like report balancing and interrogating websites and web services, and a very cool tool.
Tom: So think about that Chuck. How many different scheduling lingos did you go through? You said job scheduling, enterprise scheduling, workload automation, business process automation, RPA, robotic process automation, and at the end of the day, it's all scheduling, right?
Chuck: Mm-hmm (affirmative). Mm-hmm (affirmative). Yep. All right.
Chuck: So I am sharing up our first polling question. Where do you struggle with job scheduling on IBM i? And Tom, you know, we hear about these pain points almost every day when we talk to customers about how they're managing their workload on IBM i.
Chuck: Any recent comments that you've gotten from-
Tom: Well, you know, I just had a customer yesterday, and they had several questions, one around auditing. They wanted to be able to audit whenever anybody did a due, when any time anybody used an autorun function, they wanted those things to show up in their audit reports and stuff, so that was one of the things.
Tom: And then the whole ... some of the things we're going to show today, job flowcharting, dependencies, those kinds of ... and then SLAs, dealing with SLAs, that was another topic that shows some of the different things that we could do.
Chuck: That's a big one, yeah. Absolutely. Okay? We'll give you another 10 seconds or so to answer this question. It looks like what's coming out on top is no visibility into the impact of adding a job, no way to receive proactive alerts, no file or job dependencies, that's ... yep, that's a big one.
Chuck: All right, I'm going to close the poll and we'll share the results. All right. Here we go.
Chuck: All right. Tom, you seeing that?
Tom: I am. I've just got to move the X. Okay, yes. Impact of adding a job is the big thing for people, yep. And then file and job dependencies, it's amazing the number of people that don't realize you can use Robot Schedule automatically to monitor files within IBM i, and we've had that for, geez, five years now.
Chuck: Exactly. Okay. Well, I tell you what, let's hide that. Let's close that poll. And one of the things we wanted to point out is today for participating in our webinar, you get a black belt. A black belt in batch processing. We know you guys deal with batch processing every day, and as a small token of our appreciation, and by the way, this is a picture of me just a couple of years ago when I was dying my hair.
Chuck: Just kidding, Tom.
Tom: It still looks like you.
Chuck: We're going to send you a t-shirt, so you're going to get a survey question toward the end of the presentation and you'll be able to fill out your address and name and size requirements and all that.
Tom: Actually, we're going to send that through a chat, right? So they're going to-
Chuck: We are.
Tom: ... SurveyGizmo, right? So you'll look for something coming in chat, you'll have to click on that to put in your t-shirt size.
Chuck: Yeah. So don't forget that, and we'll remind you toward the end. So please stick around.
Chuck: And this is also our agenda. Visualizing the impact of adding a job, proactive alerting, file and job dependencies, incorporating file transfers, modifying a job stream from anywhere. Mobile. And a bonus Tom, automating parameter input.
Chuck: How's that sound?
Tom: Sounds great.
Chuck: All right. All right. Well, there we go.
Chuck: So Tom.
Tom: You're going to love it.
Chuck: We're going to have a little fun with this. Hey Tom. So-
Chuck: ... I've got a job, I need to insert it before my MRP run but after my sales uploads, so talk to me how we can do that.
Tom: Yeah. How can you do that? Because if you're using the job scheduler like Chuck has in the background, the native job scheduler, you're going to have to maybe do some timer jobs or put some CL wraps around it, some of those kinds of things to be able to build this dependency in. Whereas with Robot Schedule, we're going to show you how you can insert processes, whether it's a file watcher process, file [inaudible 00:08:29] process, and whether it's your end of day, end of month type reporting that you're doing and you need to add another task, and we'll show you how you can visualize those things.
Tom: This may be your current environment where you have your end of day processing all in a CL. CL's great. You can do just about anything you want, but there's no auditing. If you ever need to change or add something in or do something temporarily, you've got to recompile the program, you might have to go through change control and things like that. It does create some cumbersomeness in the office, and then the other thing is, not all of you are programmers out there. I mean, we've kind of aimed Robot Schedule to work with operations or technical people that don't necessarily know programming.
Tom: So very difficult to go into the CL and just submit one of these processes. You'd have to copy the code out, go to a command line, and then submit it.
Tom: Okay? So enter job flow diagrams. And we have a couple different ways of looking at job flow diagrams today. This is a Robot job that has reactivity in it. There's multiple commands that are in here. There's group jobs involved potentially. There could be cross-system in your activity. So what we're going to do is we're going to share in live demo mode how this looks within Robot Schedule.
Tom: So Chuck, if you could make me presenter.
Chuck: I will do that. Hang on one second.
Tom: Sometimes this takes a little bit. There we go.
Chuck: Tom, you are now the-
Tom: All right. I am now the presenter. I need to make sure I share the right screen. There we go. So this is the right screen. Oh my gosh. Hey, this isn't a green screen, Chuck. Did you change my background? Oh no, I'm just kidding.
Tom: Yeah, Robot Schedules had a free GUI in it, graphical interface that you install on your desktop since 2006. This version that was done in Java. There was another version before that that was probably done in 1996 or something like that, so we've had a graphical interface for quite a few years. All your new people, for sure you want to be showing them this. And there's a lot that you can do here. We have our Enterprise agents built in here. Just kind of I thought I'd give them a little tour here too, Chuck.
Chuck: Yeah, good plan. We've got time.
Tom: Scheduling objects. We've got all of our jobs up here, we can look at jobs by agent, by application, by group, by reactivity. Some of the other things that are in here is, you've got to remember you can right-click all the way up here. You can start and stop Robot from here, you can build filters from here, schedule activity monitor, licensing, and then across the top here we can roll in. And if we have somebody with Robot Network, you can connect to more than one system from here. You can just go into host mode and connect to multiple systems, so a lot of great features.
Tom: One of the features that we added in, I don't know how long ago, I shouldn't even say how long ago because I can't remember, is the ability to do blueprints. So, I have a manufacturing group here with some jobs in it. If I wanted to, I could come in here, right-click, and submit a blueprint. And I've already built that. What that does is it submits a batch job off, generates the dependencies. Okay?
Tom: So that's all done in the GUI. And like I said, we've already done this for you, so if I come down here, I have in this one of my ... actually I believe I have this up already, but let's just do it anyways. Yeah. So there's our ... we have a manufacturing process. We're doing a pre-backup, and then we have some updates that are going to happen within the manufacturing process, step one, two, three, four, those are all part of group. We can see sequence one, two, three, four that are going to happen in order.
Tom: And then we also have another job, a post job that can't run until group number two and three finish. That's what we're showing here. Pretty nice. We also, if I jump over to my browser ... of course I have this up more than once, we have this same set of groups in the schedule insight browser interface. So here we see where I found this job, and if I track this down ... We doing good Chuck?
Chuck: We are.
Tom: We're doing all right. So I can expand my dependencies. Now, I haven't been on this screen for probably about 15 minutes, so it's just refreshing itself. And I'm going to do a little minus here to fit this to shrink onto my screen. But a little different look to the same flowchart. So the question becomes, how do I add a job into this flow?
Tom: So now as we can see, it's getting a little more complicated as I build things up, but that's kind of the end of our process right now. And I can drag that around to the middle of the screen here if I want and be able to ... Ooh, it's getting a little small, Chuck.
Chuck: Yeah Tom.
Tom: But anyways, we want to add a job. So I can't add jobs from the browser, but I can add jobs from the GUI here, yep. So I'm going to go ahead ... thanks Chuck.
Tom: So I'm going to add a job, so I happen to have another manufacturing job, and this is the manufacture a new job, I can select that. Now really, right now it has no relationship, but I want to make this new job part of the prerequisites for my group job. So I can go into the properties of my group job and I can go to reactivity, and right now we can see we have one step in here, and if I want, I can come down and add my other job, manufacture a new job. That's the only I could remember. You've got to remember, I was flying yesterday. Okay.
Tom: So now we have this process here saying, "Hey look, we're going to run this group, but only after these two things run." Now if I want to, I can move these arrows around and kind of clean this picture up a little bit. Maybe, maybe, maybe, maybe. Put that there, and yeah, actually if I even really wanted to get better, I'd probably move this little box, or move this arrow over here, right?
Tom: So just kind of clean things up a little bit so we can see our dependencies there, and now that's how we add a new job to a flowchart.
Tom: Now some other things you can do-
Chuck: Oh yeah, go ahead.
Tom: Yeah, some other things you can do is I can force a job to run right from here. So I could say, "Hey, I want to run this job here," right from here. And so that's going to fulfill one of my prerequisites, and if I wanted to, I can actually go ahead and run the next one from here.
Tom: But what I want to do Chuck is ... Are we okay on time yet?
Chuck: We're doing good.
Tom: All right. So if I go back to this diagram here, and I'm going to have to refresh this set of jobs here. And we probably should make this a little bigger so people can see what I'm doing.
Tom: So through the browser, here's one of the other issues. I was at a customer site yesterday and they had a development group they'd like to give access to Robot Schedule, but they don't want the development group in there actually changing jobs, they want them to be able to see jobs, right? And so the issue is, how do they do that? What's the best way of doing that? They want people not using green screens anymore, they'd like to modernize their environment. I'm like, "Well, you should be using the browser," and they were like, "What's that? What's Insite?" Well, Insite's been around with Robot Schedule for three or four years now, Chuck?
Tom: Yeah. So we can see now we have prerequisites here. Now the thing is, we can see, "Oh, look at this. This ones already completed," right? So I actually have a little camera here, and I can watch activity, and we can see where ... Oh. Actually, that started that job. Well that's cool.
Tom: So this job is running, and once it's done completing, that's going to become a prerequisite for this. And so we could actually sit here on this screen and watch our dependencies run during night processing.
Chuck: A live job flow diagram.
Tom: Yeah, a live job flow diagram. Again, my screen's a little small for everything that we're doing here today, but you get the drift. I can make it a little smaller so we can see everything, and as this job's running, I probably picked the wrong job. This job runs for about three, four minutes. We're not going to sit here and watch all that to run.
Tom: But anyways. There we go. So now we have our whole stream here. And if you want, you can take a picture of that too and get a image of that whole diagram right here. Let me see if that comes up here. Of course it comes up, but it's over on my other screen. So if I just slide ... so now I have an actual JPEG image, maybe I want to put it into a PowerPoint for a development meeting because, geez, what were we trying to answer here?
Chuck: What is the impact of adding a job?
Tom: Correct. So there we go. How's that? And our job's still running over here. I should have picked a little bit shorter job to run. Apologize for that, we could ... as it finishes, you have to trust me, it would show you the next set going so forth.
Chuck: Yeah, it's actually pretty cool, the live job flow diagram feature. Very cool.
Tom: All right. Well that's it for me, let's move back over to the PowerPoint, Chuck.
Chuck: All right. I'm going to take control.
Tom: Yeah. I guess I've got to stop sharing. There we are.
Chuck: All right, let me know when you can see my screen.
Tom: I can see it, Chuck. So, hey Chucky.
Chuck: Proactive alerting.
Tom: Why didn't you tell me that that inventory job ran so long last night?
Chuck: Yeah. Sorry about that Tom. I might have missed that, I am only human. And all you gave me was this checklist for Thursdays, and I've got to go in, and I've got to look at every batch job as it runs, and I've got to write down when it started, when it ended, did it complete normally?
Tom: That's what they call a run book. A manual run book, Chuck.
Chuck: Exactly. It's a little bit of a pain, and you know, nowadays we really only want to know when things go wrong, right? So a couple of options that we have in Robot Schedule, first of all, of course we do have proactive alerting if a job terminates, all right? So you can add in Robot Alert, and certainly we put messages out in QSYSOPR if a job does end abnormally.
Chuck: In the definition of a Robot job, there is a job monitors feature. And I'm showing this in the graphical interface. This is also in the green screen interface. The three options are detect job overrun, job underrun, and late start. And there's options within there to look at maximum duration of a job if a job runs for more than 15 minutes and you want to be notified, certainly we can do that. Or if it doesn't complete on time, meaning an hour of the day. If it doesn't complete by 11:00 PM we can send a Robot Alert notification.
Chuck: I'll show you what they looks like. Send an email, send a text. Job underrun, same deal. Did it run too fast? Are you expecting it to run for an hour and it ran for a minute? That might be a tip-off that maybe your input file was not correct. And likewise, late start, which looks at the job forecast, and if the job doesn't get started on time, maybe it's stuck in a job queue. Again, we can send out notification. We can even end the job from the job queue, and then of course, Tom mentioned the audit trail. The audit trail of changes.
Chuck: We also have an audit trail of these SLA-type events, all right? And I'll show you what that looks like, I'll show you what some of the notification looks like, but Tom, talk about this brand-new command that showed up in November for Robot Schedule.
Tom: Yeah, sounds good. So one of the things that I've seen as I visited customers, and maybe it's not you, but I've seen this with other customers, where they do have people, even though they have Robot Schedule, they're manually checking jobs off, and that's because at some point, some time, some critical process, somebody missed it, and it didn't run for whatever reason. So in November here of 2018, we started shipping this new command called Forecast Jobs Missed command, and what it's going to do is automatically, it can compare your internal forecast to the actual job run history.
Tom: And then with that, we also have ... so what we're doing is we're looking for exceptions, right? And if there's an exception, we can alert you through Robot Alert, through Robot Network, through a message to a message queue of your choice, or you can look at a report. Maybe you do have those auditors want to verify that you're doing that, right?
Tom: And then what we do is, you can run this in every job and say, every 15 minutes we'll look back between the previous 15 minutes and look for any kind of surprises in the schedule, and then automate the process of notifying you. You can also do a date range on this Chuck, and then we also have on the ... I don't have the full capture here, but there are a few more parameters where you can exclude jobs that already have the late start monitoring on it, or jobs that are on hold, or every, or job names. Or certain job names, you might want to exclude certain job names for whatever reason.
Tom: But that's the new command. You have to be on the latest and greatest level of Robot Schedule, but it's free, free, free. Part of the product. Well, it's part of-
Tom: ... not totally free.
Chuck: Yep. Absolutely. Well okay, let's jump into a live demo, all right? And so I have my GUI up. I also have my job flow diagram up, so let me bring that in, all right?
Chuck: And much like Tom's manufacturing example, this is actually a job flow that runs every day. I do a daily backup. It triggers the nightly process, it runs things like the Good Morning report. The tan boxes here are processes that run out in the Windows and Linux world, mostly Windows in my case. And after my nightly process runs, I run some other downstream activity, I run some invoicing, some error reporting, and so forth.
Chuck: And I want to show you the setup of my error report, my invoicing error report, which does have some job monitors. So in the GUI, it's right here, job monitors. All right? And the options are detect job overrun, job underrun, and then late start, and as mentioned, this looks at the internal forecast of the job.
Chuck: So in this case, I've said maximum duration of this job is one minute, and then I want to send out some warnings, all right? And because I use this for demonstration purposes, I have the one minute both for overrun and underrun so I can actually generate some notifications. And then this one is important too, I want to make sure that this job gets started by 18:00 hours, and I don't have it specifically scheduled, right? This job is just reactive to my nightly process. And according to the forecast, it's going to start at a certain time, but I want to make sure it gets started by 18:00 hours.
Chuck: Okay. So what does this look like now in terms of event monitoring? Or SLA-type monitoring? So first of all, I have the job monitor events, all right? Here's the last two days of issues that we've had. Okay, I've got some jobs here that sent out some warnings because of overrun, because of underrun. I didn't have any late starts, all right? So this is the last two days, and then you can filter this and create your own filters to report on this data. All right.
Chuck: I've also got my notification, that space daily right at the top of the list. Here's the email notification that I got. My Robot Alert email notification. Okay. In terms of the audit reporting ... all right, here's my job monitor events, and I ran this for the whole month of February.
Tom: All right.
Chuck: And it says out of all my jobs, here's my percentages that are being monitored. So I've got 50 jobs, you want me to blow that up a little bit, Tom?
Tom: You know, I was just thinking that. There you go. Thank you.
Chuck: Okay. Okay.
Tom: Wow. I've got my glasses on, and I still can't see it. Okay, now I can.
Chuck: Okay. Yeah. So it's telling me first of all, out of my entire schedule, I've got 50 that have job monitors, and then over that time period, that one month time period, here's the issues I had.
Tom: Okay. You know, I had this same question yesterday from this customer, can you show me any jobs that are running longer? And I was pointing him to the Good Morning report, but the job monitors could be another way of doing that.
Chuck: Yeah. And then it gives us the blow-by-blow every time those job monitor events occurred, and then what sort of escalation was sent out.
Chuck: Okay? Now related to this Tom, is of course, the Good Morning report.
Chuck: All right? So let's do that. Let's bring up my Good Morning report. I have that emailed to me, Robot Reports emails that to me. And the ... you know what? Let's bring it up in the GUI. So one of the things you can do in the Robot Schedule Explorer is you can actually look at spool files, all right? And there's two reports created, all right? The first one of the Good Morning report, and that's a report that you can schedule to run automatically, and I think-
Tom: Can you make your font a little bigger?
Chuck: I can try.
Tom: Cool. Yep. There you go. Whoa.
Chuck: There we go.
Chuck: All right, so this is for a 48-hour period, so from early in the morning on the 27th until today at midnight. I had 198 jobs running normally out of 202. I had four jobs that had a runtime deviation, and four jobs that ended abnormally, okay? So that's the summary report.
Chuck: And the detail report talks about those jobs that ended abnormally, all right? All right, so this is kind of like your checklist, it looks like that invoicing job definitely has issues. All right, so this is a good place to-
Tom: That would not be a good thing.
Chuck: ... give it to your programmers and say, "Hey. You've got some work to do."
Tom: All right.
Chuck: All right, let's move on. Tom, hang on one second.
Tom: Back to the PowerPoint.
Chuck: Back to the PowerPoint. And Tom, I've got a question for you.
Chuck: We need to detect that a point-of-sale file is on a PC and then upload it automatically, and then trigger a batch process. How do we do that, Tom?
Tom: Well, we build in some dependencies around file monitoring, or some people in the industry call them file watchers, but at the end of the day, it's event-driven scheduling. And if you don't know one thing about Robot Schedule, it is awesome at handling dependencies, and that is really where it's at today, right? We want to be able to be as event-driven as possible as we run processes.
Tom: Chuck showed his CL nightly process, fairly complicated. But these things run always in the same order. You can build notification in, as we've seen, where things are late now, or we can use the new command to help trigger things, if we have to do that, we certainly can. It all works together.
Tom: Here, we can show in the diagram here the agent event properties where you can set up a file coming in. How much history, that was the other thing that the customer I was visiting yesterday, they wanted to know history around files coming in and out of the system, and this will then create history of that activity coming in. And even the file names will be stored in there.
Tom: So then when are we going to look for this file? How often are we going to look for this file? And what's the name of the file? And we can use generics with that. So really kind of nice little feature for that. So just to blow this up a little further, we also have some built-in functions. We have the agent history itself telling us the name of the file, but then we also have the ability to use file transfer capabilities within the Robot Schedule product. If you want something a little more than that, we also have the GoAnywhere product, which does even further automation around file transfers, or as we say, files that are in flight.
Tom: So I guess we're going to do another demo here, Chuck. So I'm going to show people some dependencies and how that works.
Chuck: You got it. You're the presenter.
Tom: I am the presenter. All right. So we're back to the graphical interface, and we have two ways we can monitor files. So if you want to monitor files within IBM i, so I'm not talking Windows Unix or Linux, within IBM i, we added, quite a few years ago already, the ability to monitor files. And so if I open up one of those, we can monitor IFS, as we're showing you here, and we're doing it every so many seconds, and we can say removed, changed, certain size. Don't want to mess up somebody else's setup.
Tom: Or let's see, we can go to ... Excuse me. A library itself, and we can check libraries for files too. So instead of just the IFS, we can also look for files. So that's one way, and that's all without what we call Robot Schedule Enterprise. If we want to monitor a file arriving on a Windows server for instance, or a Unix server, then I can come down here, and I happen to have a file monitor. I can right-click on that.
Tom: First of all, I can see, are there any Robot jobs that are going to run when a file comes in? And yes, I have an email job I call that's going to run, and then we also can look at event history right here. So let me pull that over. So we can see the last time I did this was February 22nd. It's been a slow month for file arrivals, Chuck. And then of course, I can do a blueprint from here too if I wanted to get a diagram I can close that, so I would just submit that off, and I can look at that diagram at a later point in time.
Tom: So we have a job that's going to run when this file comes in I believe, so if I go look at my agent jobs and I find my Tom email job right here, and I look at its dependencies, we'll see that we can have dependencies that are file, dependencies that are other jobs of course. So let's see, reactivity. Right now I have just one of these agent events, that's what this is. So I can monitor a process, file, directory coming on a Windows Unix or Linux server.
Tom: Add agent event, or add event rather, this is files within IBM i, so I could monitor a file coming into IBM i and a Windows server at the same time. It could be a prerequisite. And of course, I can do all of my other dependency processing that I've done for years with other Robot jobs.
Tom: So a lot going on there. Let's do this, I have my file that's empty, and I lost my file that I was going to move here. Where did that file go? Oh, Chuck.
Chuck: Live TV.
Tom: Oh, I know why. I'm going to stop sharing here. All right, and I'm going to share again, and I'm going to share my ... it took away my background, so now we see my file, right Chuck?
Chuck: Ah, yes.
Tom: Okay. And notice the folder's empty, right? So no tricks, nothing up my sleeve, drop the file in there, got to wait a little bit, got to talk a little bit.
Chuck: 20 seconds, right? You had a 20-second checker there?
Tom: Yeah. I want to go back to that prerequisite anyways and show you just a couple things that I like to do with it. So if I come back here, notice I'm saying 20 seconds. I have a file, FTP/*, but then I'm also doing this, has not changed in 30 seconds, so some people say, "Hey, can you make sure the job doesn't run before all the data gets there?" And the answer is yes, we'll wait. And it could be longer, you might say, "Hey, we really to wait a minute or two minutes before we consider the file to all be there," because of network speed or something like that.
Tom: So we've waited that long. Now I right-click and if all is good, this is live TV, we have a new file event here.
Tom: Right? And it gives you the name of the file that came in. Really helpful, and if you don't believe me, we can go look at our completion history and we should see Tom email. Ah, it's running live right before our very eyes. I didn't plan that. I was hoping it was done because I can show you the job log.
Tom: Let me see if the spool files are all done. Yep, they are. Look at that. So, one of the things we give you with these agent jobs is we actually show you the job log from the Windows or Unix server. Look at that. And we even show you the commands.
Tom: All right, I probably took way too much time, Chuck. But it was fun. I love demoing that.
Chuck: That's a very important topic.
Tom: It is, it is. So I guess we're back to the PowerPoint?
Chuck: We are. And I'm going to make me the presenter. Awesome.
Tom: So Charles, no Chuck anymore. Remember that job you were going to put on hold for tonight?
Chuck: I do Tom, but you know, I'm sitting here in the Target parking lot. We are in Minnesota after all, the land of Target. And all I have is my phone.
Tom: I know where you'd rather be.
Chuck: Yeah. You know where I'd rather be?
Tom: Yes. Now we're at the beach.
Chuck: Wow. This is awesome. So yes, Robot does have mobile, and in fact, the Insite interface that Tom just got done showing you a little bit earlier, that was the interface that was first delivered to Robot Schedule, the web interface, and if you own Robot Schedule, if you have a license to Robot Schedule, you are licensed to use the Insite interface, so I'm prepared to show you Insite, all right?
Chuck: Let me pull in my browser. So this is browser technology, and it was written using a responsive design, all right? So depending on the landscape available, it will reformat itself appropriately. Just bringing up all the products that are currently supported in Insite, they're listed here. It's a combination of Robot products, Powertech products, Automate is listed here, Intermapper, network monitoring, password reset, multifactor authentication, all for IBM i. And then a technology called deployment manager that makes your software updates really, really easy for Powertech, Robot, and Sequel.
Chuck: We're going to focus here on Robot Schedule for the moment. This is the home screen basically saying, "I've got three systems with Robot Schedule. It looks like my Caracal system is inactive or Robot's inactive, but Academy and Wisdom looks good for the last six hours. Here's my activity, I could look out 12 hours or 24 hours and get those summaries as well.
Tom: I think we need to do more automation on Academy, we only have 13 jobs.
Chuck: Yeah, yep. Academy's kind of like our HA backup, right?
Tom: Ah, it is.
Chuck: Right? So we've been showing you the schedule activity monitor a little bit today, all right? And so this is the schedule activity monitor in mobile, all right?
Chuck: So if I'm in the Target parking lot and I get a call saying, "Hey." Or I get an alert, Robot Alert saying I've got some issues, because maybe I've got a job waiting on a message, all right? So here's my job that's waiting on a message. And so first of all, I want to look at the job log, all right?
Chuck: So now all I had to do was connect my mobile device VPN back to the shop and connect to my Insite server which is a HTTP server hosted by Windows or Linux or potentially AIX, I suppose, but Windows or Linux is most common, and here's my job log, all right? My live job log, and there's the message waiting for a reply. If you are a Robot Console owner, Robot Console will be coming to Insite here shortly, the first half of the year. But anyway, I've now nailed it. I know exactly what's going on with this job.
Chuck: Likewise, I can take the option to end it, hold it, release it, I can of course look at the job log, and Tom showed you the diagram option. So this is super useful. What is being held up because this job is waiting for a reply? So all I have to do is say, "Diagram the job." Now it's going back and it's harvesting all the dependencies. And it's going to draw out a job flow diagram. Remember, this is F-R-E-E, free technology if you have Robot Schedule, this is included. So here's my invoicing errors report, it's triggered by my nightly process. There's actually nothing downstream, all right?
Chuck: Other things in Robot Schedule that you can take advantage of, there's a completion history option, there's a critical jobs list, that's kind of handy. So if you want to group your jobs, like all your backup jobs into one group, and then see if there is specific information out there around those jobs that you're interested in, and I think I might have to change my default to all jobs. All right.
Chuck: So what you're going to see here is just those completion history records from my backups, all right? And I can drill in here and I can get to my spool files, read job logs, and so forth. Right? Tom, I think we've done it.
Tom: Exhausted. We've exhausted our time on that.
Chuck: Bonus! So Tom, the bonus question.
Tom: Yes. So-
Chuck: True or false.
Tom: ... do I still have to ... True or false, do I still have to enter parameters manually, Chuck?
Chuck: False! False!
Tom: False. All right.
Chuck: Yeah. A very powerful feature that-
Tom: Wow. I was worried how you'd answer that.
Chuck: We kind of gave it away. So Robot can calculate input parameters, and whether the input parameters go into a command or a parameter string or whatnot, we can calculate those parameters. So you'll see here I actually have the Robot Good Morning report and a couple of parameters that start with an @@ sign. So that's the flag to Robot to say, "Calculate the value that's needed for input," all right? So when this job actually ran, it ran from February 26 through February 27 based on the value of these variables. Very powerful and easy to use feature of Robot Schedule.
Chuck: So let's take a quick look at what that looks like. So first of all, reserve command variables are located under scheduling objects, and I'll just pick one here, all right? Ultimately, the setup of a reserve command variable calls a program, passes a parameter. These programs are shipped with the Robot Live library, you can take advantage of them. They're very well documented.
Chuck: If I hit the F1 key, you'll see that there is HTML help on how to use these reserve command variable and creating your own, all right? So what this looks like when a job actually runs, and let's pick a job. I have one here called CLJOB1, let's pick that one. This one I know runs the Good Morning report, sends out some alerts. So here in the command string, wherever you see the @@ sign, all right? @@. That's Robot's flag that it needs to calculate the value of those variables, and I can actually do that by testing it right here in the GUI.
Chuck: All right, so I can say test, and if this job ran right now, it would run from the 26th to the 27th. All right. And if we look at the last time this job ran in the completion history, and let's go into ... oops, let's go into the job log so you can see RBTGM, let's search for that. Here is the actual command that was submitted off in my job log, okay?
Chuck: So Robot calculated those variables. Fully automated from now on, never have to touch it again.
Tom: Love it.
Chuck: All right? All right. So Tom, are you going to send out that link to the-
Tom: I have it all queued up and ready to go.
Tom: That's what I was doing earlier when I wasn't paying attention to you, okay?
Chuck: I thought you were checking your [crosstalk 00:42:59].
Tom: We've seen a lot of great things here today. Robot Schedule does have some very modern interfaces today. We can visualize our jobs, we can get proactive alerting for SLAs, file job dependencies, incorporate file monitoring, modify job stream from anywhere really, and look at what's happening, and we can certainly automate any parameter that we need to.
Tom: So I'm sending out in the chat to everybody that's here a SurveyGizmo URL, you'll need to click on that at some point in time, and then you will get a free t-shirt. We want to know, we need your size.
Tom: So what do you have here for a polling question, Chuck?
Chuck: Well, the question is, in addition to sending you a fantastic t-shirt, how else can we help you? Select all that apply. Maybe you'd like to trial Robot Schedule, maybe you'd like to see a demo, maybe you'd like to have a Tech Update. Tom, what's a Tech Update?
Tom: Tech Update, that's where we spend about an hour with you and your team. It'd be great to have you along with your manager on a call with HelpSystems, and we'll share everything new at HelpSystems, which there's a lot. Over the years, we've done 25+ acquisitions, we continue to work on the Robot, Powertech, Sequel, all of these product lines organically and make them better. So we've got a lot to talk about, plus we want to hear your stories and what you're thinking about, and what's on your mind as you plan your future.
Tom: So love to have you on a Tech Update. Also, keep in mind too, maybe you want a demo of Robot Schedule Enterprise or even our integration with Robot Schedule Enterprise and Automate, and robotic process automation. A lot going on at HelpSystems.
Chuck: There is. There is. So Tom, we're right at 45 minutes after the hour. Any final comments, questions, suggestions, Tom?
Tom: Well, I think if you've waited too long to automate your schedule, you need to do it. And if you need help, we do do services too here at HelpSystems. We can help you out with our services team to help you get started, help you create jobs. Robot Schedule is a tool that's used by administrators, programmers, operators, even managers I know who go into Robot Schedule and create jobs or watch jobs. In this day and age, we can't afford to do this manually anymore, we have to have productivity tools and Robot Schedule/Robot Schedule Enterprise is exactly that.
Chuck: Yeah. Yep, and we have a question from Fernando wondering if there's a recording of this session. Fernando, yes, you'll absolutely be receiving a link to the recording. I'm going to close the poll, and Tom, I think we'll say goodbye.
Tom: Wonderful. Well, thank you all for being on yet another webinar. We've got some exciting ones coming up here yet in the month of March, coming up just around the corner as that lion roars in, right? Something like that they say.
Tom: We have how to upgrade to POWER9 the right way as a webinar, we have a PowerHA and RobotHA webinar coming up in March. For those who might have AIX in their environment, next week I have an AIX community survey going on. What else Chuck? Anything else?
Chuck: I would say keep an eye on our website.
Tom: Yeah. I mean, we have webinars on pretty much all security automation topics. So thank you so much for joining us today. Make it a wonderful day.
Chuck: Yeah, bye-bye.
Time to Replace Legacy AS/400 Schedulers?
Your business has changed. But has batch processing kept pace? If not, we can help! Download this guide where we help you assess your processing methods and identify the signs that it’s time for a change.