XML 60 R45.htm IDEA: XBRL DOCUMENT
v3.26.1

Revenue Recognition (Narrative) (Details) - USD ($) | 9 Months Ended |  |
--- | --- | --- | ---
Apr. 30, 2026 | Apr. 30, 2025 | Jul. 31, 2025 | Jul. 31, 2024
Concentration Risk [Line Items] |  |  |  |
Capitalized contract cost, impairment loss | $ 0 | $ 0 |  |
Contract liabilities | 65,092,000 |  | $ 62,546,000 | $ 65,834,000
Revenue recognized | 46,516,000 | $ 48,661,000 |  |
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2024-05-01 |  |  |  |
Concentration Risk [Line Items] |  |  |  |
Remaining performance obligations, amount | $ 696,120,000 |  |  |
Remaining performance obligations, period | 24 months |  |  |

X
- Definition Amount of impairment loss for asset recognized from cost incurred to obtain or fulfill contract with customer. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 340 -SubTopic 40 -Name Accounting Standards Codification -Section 50 -Paragraph 3 -Subparagraph (b) -Publisher FASB -URI https://asc.fasb.org/1943274/2147479483/340-40-50-3 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 220 -SubTopic 40 -Name Accounting Standards Codification -Section 50 -Paragraph 22 -Subparagraph (g) -Publisher FASB -URI https://asc.fasb.org/1943274/2147476148/220-40-50-22 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 220 -SubTopic 40 -Name Accounting Standards Codification -Section 50 -Paragraph 22 -Subparagraph (e) -Publisher FASB -URI https://asc.fasb.org/1943274/2147476148/220-40-50-22 + Details
Name: | us-gaap_CapitalizedContractCostImpairmentLoss
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
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 Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 275 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 18 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482861/275-10-50-18 Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 275 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 18 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482861/275-10-50-18 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 275 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 20 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482861/275-10-50-20 Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 275 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 18 -Subparagraph (d) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482861/275-10-50-18 Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 275 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 18 -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482861/275-10-50-18 Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 275 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 18 -Subparagraph (b) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482861/275-10-50-18 Reference 7: http://www.xbrl.org/2003/role/exampleRef -Topic 275 -SubTopic 10 -Name Accounting Standards Codification -Section 55 -Paragraph 18 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482836/275-10-55-18 Reference 8: http://www.xbrl.org/2003/role/disclosureRef -Topic 275 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 20 -Subparagraph (b) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482861/275-10-50-20 Reference 9: http://www.xbrl.org/2003/role/disclosureRef -Topic 954 -SubTopic 310 -Name Accounting Standards Codification -Section 50 -Paragraph 2 -Publisher FASB -URI https://asc.fasb.org/1943274/2147478785/954-310-50-2 + Details
Name: | us-gaap_ConcentrationRiskLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 11 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-11 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 45 -Paragraph 1 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 8 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8 Reference 4: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 45 -Paragraph 2 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479837/606-10-45-2 + Details
Name: | us-gaap_ContractWithCustomerLiabilityCurrent
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 8 -Subparagraph (b) -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8 + Details
Name: | us-gaap_ContractWithCustomerLiabilityRevenueRecognized
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount of transaction price allocated to performance obligation that has not been recognized as revenue. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Name Accounting Standards Codification -Section 50 -Paragraph 13 -Subparagraph (a) -SubTopic 10 -Topic 606 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-13 + Details
Name: | us-gaap_RevenueRemainingPerformanceObligation
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Name Accounting Standards Codification -Section 50 -Paragraph 13 -Subparagraph (b)(1) -SubTopic 10 -Topic 606 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-13 + Details
Name: | us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | instant

X
- Details
Name: | us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2024-05-01
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |