We recently ran into a bug while doing some cleanup of old packages/programs in SMS. It seems that the developers didn't use a restrictive enough query to determine what advertisements a program is tied to when you use the wizard to delete a program. So, when the popup box comes up telling you what advertisements will be removed when you delete the program, there is a good chance that a bunch of unrelated Adverts will show up in the list
Here's a good thread on the issue: http://groups.google.com/group/microsoft.public.sms.admin/browse_thread/thread/f484eadce665bcba/9f4465f405cf71ec?lnk=st&q=sms+%22delete+program%22+advertisement&rnum=2#9f4465f405cf71ec
Fortunately, SMS doesn't actually remove the unrelated Adverts--it just makes it look like it is going to do so. The annoying thing is that the issue has been around for at least a couple of years and the problem still isn't fixed (we are on 2003 SP2). According to the thread, the bug doesn't cause "bad behavior" so it isn't worth fixing. What a crock! I bet it would only take changing one line of code to modify the query so that it displays the smae Adverts that it actually deletes.