Note 16 - Segment Information (Tables)
|
9 Months Ended |
Sep. 30, 2024 |
Notes Tables |
|
Schedule of Segment Reporting Information, by Segment [Table Text Block] |
|
|
Nine months ended |
|
|
Three months ended |
|
|
|
September 30, |
|
|
September 30, |
|
|
|
2024 |
|
|
2023 |
|
|
2024 |
|
|
2023 |
|
Net Sales: |
|
|
|
|
|
|
|
|
|
|
|
|
Distribution |
|
$ |
286,523 |
|
|
$ |
226,905 |
|
|
$ |
111,861 |
|
|
$ |
72,227 |
|
Solutions |
|
|
17,324 |
|
|
|
18,324 |
|
|
|
7,488 |
|
|
|
6,230 |
|
|
|
|
303,847 |
|
|
|
245,229 |
|
|
|
119,349 |
|
|
|
78,457 |
|
Gross Profit: |
|
|
|
|
|
|
|
|
|
|
|
|
Distribution |
|
$ |
51,454 |
|
|
$ |
35,472 |
|
|
$ |
21,557 |
|
|
$ |
11,671 |
|
Solutions |
|
|
8,379 |
|
|
|
7,704 |
|
|
|
2,700 |
|
|
|
2,603 |
|
|
|
|
59,833 |
|
|
|
43,176 |
|
|
|
24,257 |
|
|
|
14,274 |
|
Direct Costs: |
|
|
|
|
|
|
|
|
|
|
|
|
Distribution |
|
$ |
23,342 |
|
|
$ |
15,225 |
|
|
$ |
8,430 |
|
|
$ |
5,249 |
|
Solutions |
|
|
4,013 |
|
|
|
3,844 |
|
|
|
1,330 |
|
|
|
1,226 |
|
|
|
|
27,355 |
|
|
|
19,069 |
|
|
|
9,760 |
|
|
|
6,475 |
|
Segment Income Before Taxes: (1) |
|
|
|
|
|
|
|
|
|
|
|
|
Distribution |
|
$ |
28,112 |
|
|
$ |
20,247 |
|
|
$ |
13,127 |
|
|
$ |
6,422 |
|
Solutions |
|
|
4,366 |
|
|
|
3,860 |
|
|
|
1,370 |
|
|
|
1,377 |
|
Segment Income Before Taxes |
|
|
32,478 |
|
|
|
24,107 |
|
|
|
14,497 |
|
|
|
7,799 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
General and administrative |
|
$ |
12,078 |
|
|
$ |
12,861 |
|
|
$ |
4,177 |
|
|
$ |
3,647 |
|
Acquisition related costs |
|
|
1,201 |
|
|
|
277 |
|
|
|
609 |
|
|
|
246 |
|
Depreciation and amortization expense |
|
|
2,933 |
|
|
|
1,934 |
|
|
|
1,197 |
|
|
|
617 |
|
Interest, net |
|
|
755 |
|
|
|
760 |
|
|
|
198 |
|
|
|
318 |
|
Foreign currency transaction loss |
|
|
(688 |
) |
|
|
(100 |
) |
|
|
(442 |
) |
|
|
(140 |
) |
Change in fair value of acquisition contingent consideration |
|
|
(1,152 |
) |
|
|
— |
|
|
|
(1,152 |
) |
|
|
— |
|
Income before taxes |
|
$ |
15,181 |
|
|
$ |
9,695 |
|
|
$ |
7,118 |
|
|
$ |
3,467 |
|
|
|
As of |
|
|
As of |
|
|
|
September 30, |
|
|
December 31, |
|
Selected Assets by Segment: |
|
2024 |
|
|
2023 |
|
|
|
|
|
|
|
|
Distribution |
|
$ |
306,914 |
|
|
$ |
242,927 |
|
Solutions |
|
|
21,860 |
|
|
|
37,992 |
|
Segment Select Assets |
|
|
328,774 |
|
|
|
280,919 |
|
Corporate Assets |
|
|
43,166 |
|
|
|
54,179 |
|
Total Assets |
|
$ |
371,940 |
|
|
$ |
335,098 |
|
|
Schedule of Revenue from External Customers and Long-Lived Assets, by Geographical Areas [Table Text Block] |
|
|
Nine months ended |
|
|
Three months ended |
|
|
|
September 30, 2024 |
|
|
September 30, 2024 |
|
|
|
Distribution |
|
|
Solutions |
|
|
Total |
|
|
Distribution |
|
|
Solutions |
|
|
Total |
|
Geography |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
USA |
|
$ |
208,462 |
|
|
$ |
6,808 |
|
|
$ |
215,270 |
|
|
$ |
78,012 |
|
|
$ |
3,818 |
|
|
$ |
81,830 |
|
Europe and United Kingdom |
|
|
62,135 |
|
|
|
9,702 |
|
|
|
71,837 |
|
|
|
29,494 |
|
|
|
3,418 |
|
|
|
32,912 |
|
Canada |
|
|
15,926 |
|
|
|
814 |
|
|
|
16,740 |
|
|
|
4,355 |
|
|
|
252 |
|
|
|
4,607 |
|
Total net sales |
|
$ |
286,523 |
|
|
$ |
17,324 |
|
|
$ |
303,847 |
|
|
$ |
111,861 |
|
|
$ |
7,488 |
|
|
$ |
119,349 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Timing of Revenue Recognition |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Transferred at a point in time where the Company is principal (1) |
|
$ |
253,027 |
|
|
$ |
10,969 |
|
|
$ |
263,996 |
|
|
$ |
101,561 |
|
|
$ |
5,074 |
|
|
$ |
106,635 |
|
Transferred at a point in time where the Company is agent (2) |
|
|
33,496 |
|
|
|
6,355 |
|
|
|
39,851 |
|
|
|
10,300 |
|
|
|
2,414 |
|
|
|
12,714 |
|
Total net sales |
|
$ |
286,523 |
|
|
$ |
17,324 |
|
|
$ |
303,847 |
|
|
$ |
111,861 |
|
|
$ |
7,488 |
|
|
$ |
119,349 |
|
|
|
Nine months ended |
|
|
Three months ended |
|
|
|
September 30, 2023 |
|
|
September 30, 2023 |
|
|
|
Distribution |
|
|
Solutions |
|
|
Total |
|
|
Distribution |
|
|
Solutions |
|
|
Total |
|
Geography |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
USA |
|
$ |
180,278 |
|
|
$ |
9,908 |
|
|
$ |
190,186 |
|
|
$ |
60,891 |
|
|
$ |
3,605 |
|
|
$ |
64,496 |
|
Europe and United Kingdom |
|
|
28,903 |
|
|
|
7,508 |
|
|
|
36,411 |
|
|
|
6,353 |
|
|
|
2,418 |
|
|
|
8,771 |
|
Canada |
|
|
17,724 |
|
|
|
908 |
|
|
|
18,632 |
|
|
|
4,983 |
|
|
|
207 |
|
|
|
5,190 |
|
Total net sales |
|
$ |
226,905 |
|
|
$ |
18,324 |
|
|
$ |
245,229 |
|
|
$ |
72,227 |
|
|
$ |
6,230 |
|
|
$ |
78,457 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Timing of Revenue Recognition |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Transferred at a point in time where the Company is principal (1) |
|
$ |
200,027 |
|
|
$ |
13,290 |
|
|
$ |
213,317 |
|
|
$ |
63,587 |
|
|
$ |
4,422 |
|
|
$ |
68,009 |
|
Transferred at a point in time where the Company is agent (2) |
|
|
26,878 |
|
|
|
5,034 |
|
|
|
31,912 |
|
|
|
8,640 |
|
|
|
1,808 |
|
|
|
10,448 |
|
Total net sales |
|
$ |
226,905 |
|
|
$ |
18,324 |
|
|
$ |
245,229 |
|
|
$ |
72,227 |
|
|
$ |
6,230 |
|
|
$ |
78,457 |
|
|
Long-Lived Assets by Geographic Areas [Table Text Block] |
|
|
September 30, |
|
|
December 31, |
|
Identifiable Assets by Geographic Areas |
|
2024 |
|
|
2023 |
|
USA |
|
$ |
226,717 |
|
|
$ |
171,080 |
|
Canada |
|
|
25,345 |
|
|
|
23,994 |
|
Europe and United Kingdom |
|
|
119,878 |
|
|
|
140,024 |
|
Total |
|
$ |
371,940 |
|
|
$ |
335,098 |
|
|