XML 65 R45.htm IDEA: XBRL DOCUMENT
v3.19.3

Summary of Significant Accounting Policies (Details Textuals 2) - USD ($) $ in Thousands | 12 Months Ended
--- | ---
Jul. 31, 2019 | Jul. 31, 2018 | Jul. 31, 2017
Property, Plant and Equipment [Line Items] |  |  |
Share-based Payment Arrangement, Expense, Tax Benefit | $ 46,100 | $ 21,300 | $ 107,600
Software development costs, gross | 39,400 | 30,700 |
Accumulated amortization | 23,600 | 16,000 |
Capitalized Computer Software, Impairments |  |  | 19,400
Share-based Payment Arrangement, Disclosure [Abstract] |  |  |
Proceeds from the exercise of stock options | $ 34,398 | $ 44,459 | $ 31,188
Leasehold improvements |  |  |
Property, Plant and Equipment [Line Items] |  |  |
Description of useful lives | between seven and ten years |  |
Internally developed or purchased software |  |  |
Property, Plant and Equipment [Line Items] |  |  |
Description of useful lives | three to seven years |  |
Transportation and other equipment |  |  |
Property, Plant and Equipment [Line Items] |  |  |
Description of useful lives | three to twenty years |  |
Office furniture and equipment |  |  |
Property, Plant and Equipment [Line Items] |  |  |
Description of useful lives | three to five years |  |
Buildings and leasehold improvements |  |  |
Property, Plant and Equipment [Line Items] |  |  |
Description of useful lives | 7 to 40 years or the lease term, whichever is shorter |  |
Minimum | Leasehold improvements |  |  |
Property, Plant and Equipment [Line Items] |  |  |
Useful life (in years) | 5 years |  |
Minimum | Internally developed or purchased software |  |  |
Property, Plant and Equipment [Line Items] |  |  |
Useful life (in years) | 3 years |  |
Minimum | Transportation and other equipment |  |  |
Property, Plant and Equipment [Line Items] |  |  |
Useful life (in years) | 3 years |  |
Minimum | Office furniture and equipment |  |  |
Property, Plant and Equipment [Line Items] |  |  |
Useful life (in years) | 3 years |  |
Minimum | Buildings and leasehold improvements |  |  |
Property, Plant and Equipment [Line Items] |  |  |
Useful life (in years) | 5 years |  |
Maximum | Leasehold improvements |  |  |
Property, Plant and Equipment [Line Items] |  |  |
Useful life (in years) | 10 years |  |
Maximum | Internally developed or purchased software |  |  |
Property, Plant and Equipment [Line Items] |  |  |
Useful life (in years) | 7 years |  |
Maximum | Transportation and other equipment |  |  |
Property, Plant and Equipment [Line Items] |  |  |
Useful life (in years) | 20 years |  |
Maximum | Office furniture and equipment |  |  |
Property, Plant and Equipment [Line Items] |  |  |
Useful life (in years) | 5 years |  |
Maximum | Buildings and leasehold improvements |  |  |
Property, Plant and Equipment [Line Items] |  |  |
Useful life (in years) | 40 years |  |

X
- Definition For each balance sheet presented, the amount of accumulated amortization for capitalized computer software costs. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Publisher FASB -Name Accounting Standards Codification -Topic 985 -SubTopic 20 -Section 50 -Paragraph 1 -URI http://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756 + Details
Name: | us-gaap_CapitalizedComputerSoftwareAccumulatedAmortization
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount before accumulated amortization of capitalized costs for computer software, including but not limited to, acquired and internally developed computer software. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Publisher FASB -Name Accounting Standards Codification -Topic 985 -SubTopic 20 -Section 50 -Paragraph 1 -URI http://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756 + Details
Name: | us-gaap_CapitalizedComputerSoftwareGross
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Amount of impairment loss from capitalized computer software costs. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 985 -SubTopic 20 -Section 50 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=6501960&loc=d3e128487-111756 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 985 -SubTopic 20 -Section 50 -Paragraph 1 -Subparagraph (b)(2) -URI http://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756 + Details
Name: | us-gaap_CapitalizedComputerSoftwareImpairments1
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Amount of tax benefit for recognition of expense of award under share-based payment arrangement. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (h)(1)(i) -URI http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901 + Details
Name: | us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount of cash inflow from exercise of option under share-based payment arrangement. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2A -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=116856206&loc=SL79508275-113901 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 45 -Paragraph 14 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=118932676&loc=d3e3255-108585 + Details
Name: | us-gaap_ProceedsFromStockOptionsExercised
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Describes the periods of time over which an entity anticipates to receive utility from its property, plant and equipment (that is, the periods of time over which an entity allocates the initial cost of its property, plant and equipment). + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 360 -SubTopic 10 -Section 35 -Paragraph 4 -URI http://asc.fasb.org/extlink&oid=68071081&loc=d3e1205-110223 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 235 -SubTopic 10 -Section 50 -Paragraph 3 -URI http://asc.fasb.org/extlink&oid=84158767&loc=d3e18780-107790 + Details
Name: | us-gaap_PropertyPlantAndEquipmentEstimatedUsefulLives
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. + References No definition available. + Details
Name: | us-gaap_PropertyPlantAndEquipmentLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment. + References No definition available. + Details
Name: | us-gaap_PropertyPlantAndEquipmentUsefulLife
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_ShareBasedArrangementsToObtainGoodsAndServicesAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_SoftwareAndSoftwareDevelopmentCostsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_TransportationEquipmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_MinimumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_MaximumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |