As an implementor, I want to add or edit schedules one by one to define the replenishment cycle for individual programs so that users can submit requisitions according to their needs and our fulfillment processes.
an Admin user can add a new schedule associated with a specific program
an Admin user can edit an existing schedule
an Admin can see a list of schedules defined in the system
an admin must input a code, name associated with the schedule
an admin has the option to put in a description associated with the code and name
the system logs the date of creation/modification
a schedule's code and name are required to be non-empty and unique (per field, not the combination)
schedule must be linked with a program
when creating a requisition, program should be connected with a schedule, ie. when we use program which is not linked with a schedule, an error message should be displayed.
when creating a requisition in a given program, the period that is used must belong to the schedule associated to that program
Code, which is analogous to the codes you have included in many of the CSV files already uploaded. It is a shorthand or abbreviation for the schedule you are creating, and will be used in subsequent CSV uploads. We will assume the code is MON for this discussion.
Name, which should be your common name for the schedule. It will be visible to a system administrator when creating or editing schedules and periods. We will assume the Name is Monthly for this discussion.
Description, which can contain any additional descriptive information that might be helpful. We will assume the Description is "Regular monthly Schedule" for this discussion. (Note, the quotes are not required when entering the description into OpenLMIS.)