I read your original post and skipped the next five pages.
Based on what I believe I understand that you are trying to do (since it sounds similar to something we will be doing soon), we have item_id "Instance Variable" that is set during the initial creation loop and identifies the specific object on mouse over. That way, specific frame ID's can be stored locally on the sprite instance, rather than in a correlation array or hash (as we used to do).
When we mouse over the object, I pull the item_id then use that to set the frame of the object being created to drag and drop.
This is kind of a different paradigm than what you were pursuing though.