XML 50 R35.htm IDEA: XBRL DOCUMENT v3.10.0.1
Description of Business and Summary of Significant Accounting Policies (Tables)
12 Months Ended
Jul. 31, 2018
Description of Business and Summary of Significant Accounting Policies [Abstract]  
Schedule of weighted-average number of shares used in the calculation of basic and diluted earnings per share

 

Year ended July 31
(in thousands)
 2018  2017  2016 
Basic weighted-average number of shares  24,655   23,182   22,765 
Effect of dilutive securities:            
Stock options  9   44   6 
Non-vested restricted Class B common stock  54   83   44 
Diluted weighted-average number of shares  24,718   23,309   22,815 
Schedule of outstanding stock options excluded from the calculation of diluted earnings per share

 

Year ended July 31
(in thousands)
 2018  2017  2016 
Shares excluded from the calculation of diluted earnings per share  1,142   22   209 
Schedule of change in the allowance for doubtful accounts

  

Year ended July 31
(in thousands)
 Balance at beginning of year  Additions charged to costs and expenses  Deductions
(1)
  Balance at end of year 
2018                
Reserves deducted from accounts receivable:                
Allowance for doubtful accounts (2) $5,207  $2,199  $(2,048) $5,358 
2017                
Reserves deducted from accounts receivable:                
Allowance for doubtful accounts (2) $4,818  $686  $(297) $5,207 
2016                
Reserves deducted from accounts receivable:                
Allowance for doubtful accounts $5,645  $1,519  $(2,346) $4,818 

 

(1)Primarily uncollectible accounts written off, net of recoveries.

 

(2)

Includes allowance for doubtful accounts of $2.2 million and $2.6 million held for sale at July 31, 2018 and 2017, respectively (see Note 3)