General Best Practices

The following are considered Redwood best practices for working with RunMyJobs.

  • Organize Objects into Folders. If you organize Objects into Folders, it makes it much easier for you to export and import those Objects and promote them to other environments.

  • Use naming conventions.

    • Be consistent. For example, you could always name Objects using initial caps, substituting underlines for spaces (e.g., My_Object_Name).

    • Create a list of prefixes and suffixes that you want to use to group similar Objects, and use that list consistently. For example, you might use TW_ as a prefix for Time Windows, and AS_ as a prefix for Advanced Schedules.

  • Document your Objects. All Objects have a Documentation tab where you can make notes about what the Object is for and how it works. A little time spent documenting an Object when you create it can save you a lot of time later on.

  • If you create a new version of an Object, rename the old one(s) so that the most recent definition always has the same name. For example, if you create a new version of My_Process_Definition, change the old version's name to "My_Process_Definition_v2" and then change the new version's name to "My_Process_Definition."

  • Use different top bar colors for different environments. This makes it easy for you to tell which environment you're in (for example, Dev, Test, or Prod) at a glance.

  • Whenever possible, do a test import before importing Objects. A good example here is doing a test import when importing Job Definitions from SAP.

  • When using File Events, move newly arrived files to a different directory. This prevents confusion later on.

  • Keep a backup Secure Gateway running at all times. That way, if one of them fails, the other can take over.

  • Use a dedicated spool host.

  • Use Credentials, rather than specifying passwords in the Run As User field, in Parameters, or on the command line.

  • Use Keep Clauses. These can prevent your system from filling up with Jobs.

  • Create a "technical user" account. This is a user account that is not tied to a specific user. Technical user accounts are highly useful in situations where something needs to be done, but a credentialed user is not available. Make sure your RunMyJobs administrator has access to this technical user account.

  • When writing code, follow these suggestions:

    • Put each { and } on a new line.

    • Use camel case for parameters and functions/methods (for example: paramValue).

    • Start class names with an upper-case character.

    • Use consistent indenting to maintain readability.

    • Use comments.

    • Avoid copying and pasting code. Instead, use functions/methods. If the functionality is general, consider using a library.