The SAS Output Delivery System and reporting techniques

Defining a custom Template: Warnings

Reply
New Contributor
Posts: 4

Defining a custom Template: Warnings

[ Edited ]

Hi.

(Carried over from a different topic.) 

 

I use "proc tamplate" like this:

 

 

  proc template;                                                               

       define style Appendix2;         

       parent = styles.rtf;                                                    

       .

       .

      replace headersandfooters from cell;                                   

      replace color_list /                                

         'bgA1' = cx999999;                                                    

      replace colors /                       

         'tableborder' = color_list('bgA1');              

        .

        .

        .

      style SystemFooter from Titlesandfooters /                                

         just = L;                                         

   end;                                                                       

run;           

 

 

got this warning:  WARNING: Could not locate style reference 'Appendix2.colors("notefg")'.

                            WARNING: Could not locate style reference 'Appendix2.colors("notebg")'.

                            WARNING: Could not locate style reference 'Appendix2.colors("bylinefg")'.

                      etc

                                  

 

 

to get rid of the warning i could put this in the code:

replace colors /                       

         'tableborder' = color_list('bgA1')                                

         'notefg' = color_list('bgA1')                                      

         'notebg' = color_list('bgA1')                                      

         'bylinefg' = color_list('bgA1')                                       

         .

         .

         

        'link1' = color_list('bgA1')                                      

         'contentfg' = color_list('bgA1')                                      

         'contentbg' = color_list('bgA1');

 

 

is it becouse i have to define color for any style, is it not predefine?

 

 

BR

Jan

Jan

            

 

                                                    

SAS Super FREQ
Posts: 8,951

Re: Defining a custom Template: Warnings

Hi:
REPLACE was deprecated starting in SAS 9.2. This paper describes the new behavior of the STYLE and CLASS statements in PROC TEMPLATE: http://www2.sas.com/proceedings/sugi31/053-31.pdf

If you are using a version of SAS earlier than 9.2 and you do you the REPLACE statement, you must account for all the attributes when you do a REPLACE. So that warning was telling you that SAS and ODS were looking for those attributes from the color_list that were listed in the warning and did not find them in your template.

This is a version specific question. So it matters what version of SAS you're using whether REPLACE will work or not.

I always tended to avoid it in early versions of SAS because understanding how inheritance was changed by the use of REPLACE was sometimes difficult, especially with a parent template.

Writing new styles has become easier since SAS 9.2. Refer to this paper for examples: https://support.sas.com/resources/papers/proceedings10/033-2010.pdf

cynthia
Ask a Question
Discussion stats
  • 1 reply
  • 87 views
  • 0 likes
  • 2 in conversation