| **Navigation:**  [[abc library reference.htm|ABC Library Reference]] > ReportManager Class > ReportManager Methods >====== SetDynamicControlsAttributes (set report's static controls) ====== | [[processresultfiles process generated output files .htm|{{btn_prev_n.gif|Previous page}}]][[abc library reference.htm|{{btn_home_n.gif|Return to chapter overview}}]][[setreporttarget set reportgenerator target .htm|{{btn_next_n.gif|Next page}}]] | | || **SetDynamicControlsAttributes, VIRTUAL** {{blk2blue.jpg|blk2blue.jpg}} The **SetDynamicControlsAttributes**** **method is a virtual method used to set any dynamic attribute property on a report's controls as each record is processed. The control must have the EXTEND attribute applied. This method is used to set attributes that will be recognized by the WMFParser to generate a particular output format. **Member of: [[reportmanager methods.htm|ReportManager]]** **Implementation:** The **SetDynamicControlsAttributes** method is a vrtual method called by the ReportManager's TakeRecord method. **Example:** **ReportManager.TakeRecord PROCEDURE** **I            LONG,AUTO** **RVal         BYTE(Level:Benign)** **  CODE** **    IF ~SELF.BreakMan &= NULL THEN** **        SELF.BreakMan.AskBreak()** **    END** **    IF SELF.Report{PROPPRINT:Extend}=1 THEN** **       ****SELF.SetDynamicControlsAttributes()** **    END** **    RVal = SELF.Process.TakeRecord()** **    DO CheckState** **    LOOP I = 1 TO RECORDS(SELF.Processors)** **      GET(SELF.Processors,I)** **      RVal = SELF.Processors.P.TakeRecord()** **      DO CheckState** **    END** **    IF SELF.Next() THEN** **      TARGET{PROP:Timer} = 0** **      RETURN Level:Notify** **    END** **    RETURN RVal**