Industry, Segment and Geographic Financial Information (Tables)
   | 
12 Months Ended | 
Dec. 31, 2022  | 
| Industry, Segment and Geographic Financial Information | 
 
 | 
| Schedule of segment reporting information | 
  
  | 
  | 
  | 
  | 
  | 
  | 
  | 
 
  | 
  | 
Year ended   | 
 
  | 
  | 
December 31,   | 
 
  | 
    | 
2022  | 
    | 
2021  | 
 
Net Sales:  | 
  | 
  | 
  | 
  | 
  | 
  | 
 
Distribution  | 
  | 
$  | 
 282,509  | 
  | 
$  | 
 259,360  | 
 
Solutions  | 
  | 
   | 
 21,839  | 
  | 
   | 
 23,222  | 
 
  | 
  | 
   | 
 304,348  | 
  | 
   | 
 282,582  | 
 
Gross Profit:  | 
  | 
  | 
  | 
  | 
  | 
  | 
 
Distribution  | 
  | 
$  | 
 44,970  | 
  | 
$  | 
 36,526  | 
 
Solutions  | 
  | 
   | 
 9,124  | 
  | 
   | 
 9,190  | 
 
  | 
  | 
   | 
 54,094  | 
  | 
   | 
 45,716  | 
 
Direct Costs:  | 
  | 
  | 
  | 
  | 
  | 
  | 
 
Distribution  | 
  | 
$  | 
 15,804  | 
  | 
$  | 
 14,610  | 
 
Solutions  | 
  | 
   | 
 4,296  | 
  | 
   | 
 4,741  | 
 
  | 
  | 
   | 
 20,100  | 
  | 
   | 
 19,351  | 
 
Segment Income Before Taxes: (1)  | 
  | 
  | 
  | 
  | 
  | 
  | 
 
Distribution  | 
  | 
$  | 
 29,166  | 
  | 
$  | 
 21,916  | 
 
Solutions  | 
  | 
   | 
 4,828  | 
  | 
   | 
 4,449  | 
 
Segment Income Before Taxes  | 
  | 
   | 
 33,994  | 
  | 
   | 
 26,365  | 
 
  | 
  | 
  | 
  | 
  | 
  | 
  | 
 
General and administrative   | 
  | 
$  | 
 14,044  | 
  | 
$  | 
 12,785  | 
 
Amortization and depreciation expense  | 
  | 
  | 
 2,054  | 
  | 
  | 
 1,529  | 
 
Acquisition related costs  | 
  | 
  | 
 582  | 
  | 
  | 
 —  | 
 
Interest, net  | 
  | 
  | 
 159  | 
  | 
  | 
 359  | 
 
Foreign currency transaction loss  | 
  | 
   | 
 (941)  | 
  | 
   | 
 (46)  | 
 
Income before taxes  | 
  | 
$  | 
 16,532  | 
   | 
$  | 
 12,364  | 
 
 
 
(1) Excludes general corporate expenses including acquisition related costs, amortization and depreciation expense, interest, and foreign currency transaction (loss) gain. 
 
  | 
  | 
  | 
  | 
  | 
  | 
  | 
  | 
 
  | 
      | 
  | 
      | 
   | 
      | 
 
  | 
  | 
As of  | 
  | 
As of   | 
  | 
 
  | 
  | 
December 31,  | 
  | 
December 31,  | 
  | 
 
Selected Assets by Segment:  | 
  | 
2022  | 
  | 
2021  | 
  | 
 
  | 
  | 
  | 
  | 
  | 
  | 
  | 
  | 
 
Distribution  | 
  | 
$  | 
 180,602  | 
  | 
$  | 
 133,506  | 
  | 
 
Solutions  | 
  | 
   | 
 21,420  | 
  | 
   | 
 18,895  | 
  | 
 
Segment Select Assets   | 
  | 
   | 
 202,022  | 
  | 
   | 
 152,401  | 
  | 
 
Corporate Assets  | 
  | 
   | 
 29,834  | 
  | 
   | 
 38,351  | 
  | 
 
Total Assets   | 
  | 
$  | 
 231,856  | 
  | 
$  | 
 190,752  | 
  | 
 
 
 
 | 
| Schedule of net sales to identifiable assets by geographic areas | 
  
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 
  | 
      | 
Year ended   | 
      | 
 
  | 
  | 
December 31, 2022  | 
  | 
 
  | 
  | 
Distribution  | 
    | 
Solutions  | 
  | 
Total  | 
  | 
 
Geography  | 
  | 
  | 
                | 
  | 
  | 
                | 
  | 
  | 
  | 
  | 
 
USA  | 
  | 
$  | 
 225,380  | 
  | 
$  | 
 11,137  | 
  | 
$  | 
 236,517  | 
  | 
 
Europe and United Kingdom  | 
  | 
   | 
 34,423  | 
  | 
   | 
 9,171  | 
  | 
   | 
 43,594  | 
  | 
 
Canada  | 
  | 
   | 
 22,706  | 
  | 
   | 
 1,531  | 
  | 
   | 
 24,237  | 
  | 
 
Total net sales  | 
  | 
$  | 
 282,509  | 
  | 
$  | 
 21,839  | 
  | 
$  | 
 304,348  | 
  | 
 
  | 
  | 
  | 
  | 
  | 
  | 
  | 
  | 
  | 
  | 
  | 
 
Timing of Revenue Recognition  | 
  | 
  | 
                | 
  | 
  | 
                | 
  | 
  | 
  | 
  | 
 
Transferred at a point in time where the Company is principal (1)  | 
  | 
$  | 
 251,334  | 
  | 
$  | 
 15,044  | 
  | 
$  | 
 266,378  | 
  | 
 
Transferred at a point in time where the Company is agent (2)  | 
  | 
   | 
 31,175  | 
  | 
   | 
 6,795  | 
  | 
   | 
 37,970  | 
  | 
 
Total net sales  | 
  | 
$  | 
 282,509  | 
  | 
$  | 
 21,839  | 
  | 
$  | 
 304,348  | 
  | 
 
  | 
  | 
  | 
  | 
  | 
  | 
  | 
  | 
  | 
  | 
  | 
 
  | 
      | 
Year ended   | 
      | 
 
  | 
  | 
December 31, 2021  | 
  | 
 
  | 
  | 
Distribution  | 
    | 
Solutions  | 
  | 
Total  | 
  | 
 
Geography  | 
  | 
  | 
                | 
  | 
  | 
                | 
  | 
  | 
  | 
  | 
 
USA  | 
  | 
$  | 
 210,247  | 
  | 
$  | 
 11,057  | 
  | 
$  | 
 221,304  | 
  | 
 
Europe and United Kingdom  | 
  | 
   | 
 26,055  | 
  | 
   | 
 10,652  | 
  | 
   | 
 36,707  | 
  | 
 
Canada  | 
  | 
   | 
 23,058  | 
  | 
   | 
 1,513  | 
  | 
   | 
 24,571  | 
  | 
 
Total net sales  | 
  | 
$  | 
 259,360  | 
  | 
$  | 
 23,222  | 
  | 
$  | 
 282,582  | 
  | 
 
  | 
  | 
  | 
  | 
  | 
  | 
  | 
  | 
  | 
  | 
  | 
 
Timing of Revenue Recognition  | 
  | 
  | 
                | 
  | 
  | 
                | 
  | 
  | 
  | 
  | 
 
Transferred at a point in time where the Company is principal (1)  | 
  | 
$  | 
 234,322  | 
  | 
$  | 
 16,360  | 
  | 
$  | 
 250,682  | 
  | 
 
Transferred at a point in time where the Company is agent (2)  | 
  | 
   | 
 25,038  | 
  | 
   | 
 6,862  | 
  | 
   | 
 31,900  | 
  | 
 
Total net sales  | 
  | 
$  | 
 259,360  | 
  | 
$  | 
 23,222  | 
  | 
$  | 
 282,582  | 
  | 
 
 
 
| (1) | 
Includes net sales from third-party hardware and software products. | 
  
 
| (2) | 
Includes net sales from third-party maintenance, software support and services. | 
  
 
 | 
| Summary of identifiable assets by geographic area | 
  
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 
  | 
      | 
December 31,   | 
  | 
December 31,   | 
   | 
 
Identifiable Assets by Geographic Areas  | 
  | 
2022  | 
      | 
2021  | 
  | 
 
USA  | 
  | 
$  | 
 137,877  | 
  | 
$  | 
 122,445  | 
  | 
 
Canada  | 
  | 
  | 
 27,597  | 
  | 
  | 
 24,923  | 
  | 
 
Europe and United Kingdom  | 
  | 
  | 
 66,382  | 
  | 
  | 
 43,384  | 
  | 
 
Total  | 
  | 
$  | 
 231,856  | 
  | 
$  | 
 190,752  | 
  | 
 
 
 
 |