Birdseye isn't default 2nd time around

The List name has “Start in Birdseye View” checked. The fist time through that works fine. I go through an Emergency procedure section, and at the end I Goto List name id, and reset range. It goes to the id, and resets the range, but displays in the columnar view, not Birdseye.


There is an action Goto and Open Birdseye View instead of the reset range one. Does that not do what you want it to do?

Yes, that will go back and open the list in Birdseye View, but I also need to reset the list. Perhaps I need a script? I’ve been avoiding that and I can’t find a tutorial on scripting in MiraCheck so perhaps you could direct me to that.


Unfortunately, there are not any functions in the scripting yet exposed to reset lists or sections.

I will show you how you could do…

If you select the top-level node in the outline, and scroll the right panel you will see there is a place to put Functions under the Advanced panel. You will need to paste this function in there.

function resetSection(sectionId) {
  const { node, path } = mc.findSectionById(sectionId);
  // Loop through all children of a section and set items checked to false
  for (let i=0; i<node.children.length; i++) {
    mcState.set(path.concat(["children", i, "checked"]), false);

Then, on the Item that you have at then end where you do the Goto and Open Birdseye View action, you will want to add a Value Trigger to run the resetSection function. Under Advanced in the right-hand panel, you should find a Value Trigger panel.

Add this to each of the items where you are opening the birdseye view.

// Let's reset a section!
// If we don't pass in a sectionId param to the function it will reset the current section this item is contained in

This makes the assumption that you have an Item at the end of the section and you are using Link to open up the birdseye view like below.

So what did we do? In the Functions we added a function that can be called from anywhere in the checklist. The Value Trigger allows you to write script when you acknowledge an item. So we are calling the resetSections function we created on those items.