v3.7.0.1

Stockholders' Equity - Summary of Stock Options (Details) | 12 Months Ended
--- | ---
Apr. 30, 2017 $ / shares shares
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |
Stock option plans, exercise price range, lower limit | $ 1.83
Stock option plans, exercise price range, upper limit | $ 18.67
Number of outstanding options | shares | 5,548
Weighted average exercise price of outstanding options | $ 5.82
Weighted average remaining contractual term of outstanding options | 6 years 5 months 3 days
Number of exercisable options | shares | 3,310
Weighted average exercise price of exercisable options | $ 6.46
Range One [Member] |
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |
Stock option plans, exercise price range, lower limit | 1.83
Stock option plans, exercise price range, upper limit | $ 3.03
Number of outstanding options | shares | 260
Weighted average exercise price of outstanding options | $ 2.46
Weighted average remaining contractual term of outstanding options | 3 years
Number of exercisable options | shares | 219
Weighted average exercise price of exercisable options | $ 2.36
Range Two [Member] |
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |
Stock option plans, exercise price range, lower limit | 3.15
Stock option plans, exercise price range, upper limit | $ 3.15
Number of outstanding options | shares | 838
Weighted average exercise price of outstanding options | $ 3.15
Weighted average remaining contractual term of outstanding options | 5 years 10 months 2 days
Number of exercisable options | shares | 415
Weighted average exercise price of exercisable options | $ 3.15
Range Three [Member] |
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |
Stock option plans, exercise price range, lower limit | 3.42
Stock option plans, exercise price range, upper limit | $ 3.65
Number of outstanding options | shares | 91
Weighted average exercise price of outstanding options | $ 3.55
Weighted average remaining contractual term of outstanding options | 5 years
Number of exercisable options | shares | 23
Weighted average exercise price of exercisable options | $ 3.42
Range Four [Member] |
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |
Stock option plans, exercise price range, lower limit | 3.94
Stock option plans, exercise price range, upper limit | $ 3.94
Number of outstanding options | shares | 300
Weighted average exercise price of outstanding options | $ 3.94
Weighted average remaining contractual term of outstanding options | 6 years 1 month 7 days
Number of exercisable options | shares | 0
Weighted average exercise price of exercisable options | $ 0.00
Range Five [Member] |
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |
Stock option plans, exercise price range, lower limit | 4.00
Stock option plans, exercise price range, upper limit | $ 4.36
Number of outstanding options | shares | 675
Weighted average exercise price of outstanding options | $ 4.27
Weighted average remaining contractual term of outstanding options | 7 years 4 months 25 days
Number of exercisable options | shares | 175
Weighted average exercise price of exercisable options | $ 4.31
Range Six [Member] |
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |
Stock option plans, exercise price range, lower limit | 4.70
Stock option plans, exercise price range, upper limit | $ 6.28
Number of outstanding options | shares | 547
Weighted average exercise price of outstanding options | $ 5.26
Weighted average remaining contractual term of outstanding options | 6 years 1 month 7 days
Number of exercisable options | shares | 378
Weighted average exercise price of exercisable options | $ 5.18
Range Seven [Member] |
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |
Stock option plans, exercise price range, lower limit | 6.42
Stock option plans, exercise price range, upper limit | $ 6.42
Number of outstanding options | shares | 1,036
Weighted average exercise price of outstanding options | $ 6.42
Weighted average remaining contractual term of outstanding options | 8 years 1 month 18 days
Number of exercisable options | shares | 475
Weighted average exercise price of exercisable options | $ 6.42
Range Eight [Member] |
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |
Stock option plans, exercise price range, lower limit | 6.54
Stock option plans, exercise price range, upper limit | $ 7.39
Number of outstanding options | shares | 662
Weighted average exercise price of outstanding options | $ 6.90
Weighted average remaining contractual term of outstanding options | 5 years 7 months 4 days
Number of exercisable options | shares | 621
Weighted average exercise price of exercisable options | $ 6.88
Range Nine [Member] |
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |
Stock option plans, exercise price range, lower limit | 7.53
Stock option plans, exercise price range, upper limit | $ 9.51
Number of outstanding options | shares | 1,016
Weighted average exercise price of outstanding options | $ 8.71
Weighted average remaining contractual term of outstanding options | 6 years 5 months 12 days
Number of exercisable options | shares | 883
Weighted average exercise price of exercisable options | $ 8.84
Range Ten [Member] |
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |
Stock option plans, exercise price range, lower limit | 9.52
Stock option plans, exercise price range, upper limit | $ 18.67
Number of outstanding options | shares | 123
Weighted average exercise price of outstanding options | $ 13.59
Weighted average remaining contractual term of outstanding options | 5 years 1 month
Number of exercisable options | shares | 121
Weighted average exercise price of exercisable options | $ 13.63

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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The floor of a customized range of exercise prices for purposes of disclosing shares potentially issuable under outstanding stock option awards on all stock option plans and other required information pertaining to awards in the customized range. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (g) -URI http://asc.fasb.org/extlink&oid=6415400&loc=d3e5070-113901 + Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit
Namespace Prefix: | us-gaap_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | duration

X
- Definition The number of shares reserved for issuance pertaining to the outstanding exercisable stock options as of the balance sheet date in the customized range of exercise prices for which the market and performance vesting condition has been satisfied. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c)(iii) -URI http://asc.fasb.org/extlink&oid=6415400&loc=d3e5070-113901 + Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

X
- Definition The number of shares reserved for issuance pertaining to the outstanding stock options as of the balance sheet date for all option plans in the customized range of exercise prices. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c)(1)(i)-(ii) -URI http://asc.fasb.org/extlink&oid=6415400&loc=d3e5070-113901 + Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

X
- Definition The ceiling of a customized range of exercise prices for purposes of disclosing shares potentially issuable under outstanding stock option awards on all stock option plans and other required information pertaining to awards in the customized range. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (g) -URI http://asc.fasb.org/extlink&oid=6415400&loc=d3e5070-113901 + Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit
Namespace Prefix: | us-gaap_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | duration

X
- Definition Weighted average exercise price as of the balance sheet date for those equity-based payment arrangements exercisable and outstanding. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c)(1)(iii) -URI http://asc.fasb.org/extlink&oid=6415400&loc=d3e5070-113901 + Details
Name: | us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
Namespace Prefix: | us-gaap_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | instant

X
- Definition The weighted average price as of the balance sheet date at which grantees could acquire the underlying shares with respect to all outstanding stock options which are in the customized range of exercise prices. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c)(1)(i)-(ii) -URI http://asc.fasb.org/extlink&oid=6415400&loc=d3e5070-113901 + Details
Name: | us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
Namespace Prefix: | us-gaap_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | instant

X
- Definition Weighted average remaining contractual term of outstanding stock options, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (e)(1) -URI http://asc.fasb.org/extlink&oid=6415400&loc=d3e5070-113901 + Details
Name: | us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=bv_RangeOneMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=bv_RangeTwoMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=bv_RangeThreeMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=bv_RangeFourMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=bv_RangeFiveMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=bv_RangeSixMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=bv_RangeSevenMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=bv_RangeEightMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=bv_RangeNineMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=bv_RangeTenMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |