When is a coronary angiogram necessary?

Heart attack. Coronary angiogram is needed in case of acute myocardial infarction, or to diagnose the severity of coronary disease after a positive stress test.
Complex - Judgement. Necessity, like many other issues, in the eye of the beholder; no absolute. Usual focus: money vs. Risk vs. Possible benefits. Main benefits: best (of current methods) image accuracy of artery opening & flow + option to hydraulically expand +/- stent of any marked narrowing. Vastly better than any stress test (only detect complications advanced ds). Downside: does not show disease in artery walls.
Excellent question! (do you work for the government?) seriously, it should be done to stratify risk and plan further treatment by either percutaneous intervention or surgery in patients with known or suspected coronary disease. Common scenarios are: during a heart attack, to investigate new or unstable anginal symptoms, following an abnormal stress test or prior to planned valvular or other heart surgery.