Job Scheduler or Alternative

Hi, What is the current best approach to implement : “Schedule tasks (dataports, periodic activities, …) for a Navision database on SQL with over 50 companies. Each company needs to run some (not necessarily all the same) jobs at specified times. Since most of the jobs need to be run outside working hours and since they can take up to 1 hour, jobs should be run in parallel.” I doubt if Navision job scheduler is the best approach : - consider having to start > 50 clients, login 50 users, … - since this consumes 50 users you would need to script to log them off again Is there an alternative available ? Thanks !

You could use Navision Application Server (NAS), but that has a few obstacles: - NAS can only run for one company at a time, so you’d have to have a NAS instance running for each company. - The Navision license is per NAS instance, so you’d have to buy a NAS license for each of your 50 companies. - There is no out-of-the-box Navision functionality to actually schedule a time/date for NAS. Maybe there is something out there that you can use to schedule a windows service to start, but I don’t know if there is or not. I would say that currently the Job Scheduler is your best option to schedule a job at a specific time.

Hi, Would it be possible to create a new company : lets call it the Scheduler company. - have a NAS running on this company (NAS starts automatically on server rebout) - the NAS calls CU1, which calles a new custom codeunit “50000” - codeunit 50000 starts the job scheduler for the individual companies using changecompany Is this theoretically possible ? I think it conflicts with the must to have a client open for the job scheduler ? Bye, Gunther

hi, anyone tried expandit ? thx

You may want to look into ExpandIT - They have a nice tool that you can kick off from windows scheduler. You tell it what company, UserID, and codeunit/report to start. It actually logs in like a client so there is no need for a NAS. It will take up a user license but you don’t need to deal with the 50 NAS sessions that you would need for the Navision Scheduler. You can schedule the jobs for specific days and/or times. It works very well!

If it logs in like a client, then don’t you need a session for each company? This may be automated in a very user-friendly way in Expandit, but you’d still need that many sessions.

quote:

If it logs in like a client, then don’t you need a session for each company? This may be automated in a very user-friendly way in Expandit, but you’d still need that many sessions.
Originally posted by DenSter - 2004 Dec 23 : 18:58:07

The cleint is released once the activity is finished. However the license is to be bought per legal entity ($$$) and you should not really schedule things in parallel. So it is not of much use given the scale we are looking at.

quote:

50 NAS sessions that you would need for the Navision Scheduler.
Originally posted by RonS2 - 2004 Dec 23 : 17:22:28

Why would you need a NAS per Navision Scheduler ?

Sorry to repsond so long after your post but… Have you looked into “Automate”? It’s not a Navision or Microsoft product, but it is pretty handy. You can download a demo license and I think (not sure) that if you need multiple machines to run all of your scheduled tasks you can get multiple licenses at a reduced cost. At any rate, good luck.

Can you tell me where I can find this ? Running google on Navision and automate is not very selective. Thanks !

I believe Scott is referring to a product named “AutoMate” which can be found at http://www.networkautomation.com/

quote:

quote:
50 NAS sessions that you would need for the Navision Scheduler.
Originally posted by RonS2 - 2004 Dec 23 : 17:22:28

Why would you need a NAS per Navision Scheduler ?
Originally posted by Bous - 2004 Dec 23 : 15:34:19

The Job Scheduler only runs in one company at a time, as does NAS. So, if you want to run a job scheduler in 50 companies through NAS, you’d need 50 instances of NAS.

quote:

Would it be possible to create a new company : lets call it the Scheduler company. - codeunit 50000 starts the job scheduler for the individual companies using changecompany
Originally posted by Bous - 2004 Dec 22 : 15:54:40

CHANGECOMPANY only works for one (and ONE only) record type variable. You can’t start the job scheduler in another company by simply ‘using changecompany’, you’d actually have to develop the job scheduler to handle multicompany. I’d probably go with making the objects that are called from the job scheduler run in all companies. Those will need to be modified to accept a company name, and be able to run their processes in other companies. This requires very careful design, I’d be very cautious if I were you. For instance, you can do a CHANGECOMPANY on a record variable, but when you call its VALIDATE method, any record variables inside that validation code will still look in the current company, even though the record variable itself looks into another company. ALL record variables in the entire stack must be explicitly told in which company to look. If this is not clear please don’t even start with this method. It is really easy to screw up your data with CHANGECOMPANY if you don’t have a solid design.