Creating Object with Repeating Records

I'm just starting to play around with Knack, and I'd like to know how best to implement this example.  I'd like to create a list of shop maintenance tasks that repeat at various intervals.  I'd also like to have a log of every time one of these tasks has been done.

For now, I have an object with the following fields:

  • taskID, autoincrement
  • task name, short text
  • due date, date
  • done date, date
  • interval, number
  • status, select ("Scheduled","Done")

My idea was to have  a page that displayed a table of "Scheduled" tasks, sorted by due date.  Whenever someone completed a task, they would click a link in that table, opening a form to edit the task.  In the form, they would mark the task as complete and/or enter the completion date.  Upon submitting that form, the "done date" would be set, the status would be set to "Done", and the record would be duplicated with the new record having a newly-calculated due date (done date + interval). However, I have not seen a way to perform all of those tasks upon submission of the form.  Is this possible?

I've also tried placing the task definition/schedule in one object, and the logging info in another, but I hit similar roadblocks.  Is this workflow just too complex for the built-in tools and requires some manual coding?  Or is there a simpler approach that I'm just not seeing?

If manual coding is required, can someone point me to a starting point for that option?

Thank you!

 

I believe this is what you may be looking for https://learn.knack.com/article/clrfro7fyv-copy-a-record-using-record-rules

Im also really new to this too, have you looked into using the calendar? i had a quick read though the docs and it may help.