Turns out InventoryLaunchIterator()'s completion event triggers with GlobalFlagSet() (Thanks Norbyte!).
I actually figured out a workaround for my situation that means I don't need any treasure tables at all.
Currently I'm scanning designated traders when they're talked to, seeing if any players know the skills / talents my books grant, and then adding the amount needed to the trader (if any are needed). These items appear in the trade menu, so that works for what I wanted.