You will want to learn some of the macro debugging options such as MPRINT SYMBOLGEN and/ or MLOGIC.
If you set options MPRINT before a macro call executes you will get the code generated by the macro and error messages will likely make more sense as they will be in relation to the generated code.
options mprint;
%dentalproc(p14,126b,135b);
options nomprint;
Symbolgen show the substitution/resolution of macro variables and can be quite helpful if a macro variable is resolving in an unexpected manner. Mlogic shows the results logic statements such as %if .
... View more