Hi funding33,
The Action Index is passed as a parameter so a C Program might determine which Action invoked it. This allows you to have multiple Actions use the same C Program which might simplify things in certain cases. See the Exec Prog description here.
The Var field allows you to use any Variable you wish.
You must keep track of which persist Variables are being used for which purpose. Its ok to use the same variable for multiple programs as long as they don't use the same variable at the same time.
HTH
Regards