@@ -, +, @@ 1: have an itype BK 2: create an itype BK2, set BK as the parent to BK2 3: create a circ rule for All Patrons, item type BK (displays as "Books (All)" in the circ rules interface), setting total checkouts to 1 4: do not create any rule specifically for the BK2 itype 5: have some BK items and some BK2 items 6: check a BK item out to a patron 7: check a BK2 item out to the same patron, observe you are not blocked from doing so 8: try to check out a second BK2 item to the same patron, get message "Too many checked out. 1 checked out, only 1 are allowed." 9: try to check out a second BK item to the same patrons, get message "Too many checked out. 2 checked out, only 1 are allowed." --- C4/Circulation.pm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) --- a/C4/Circulation.pm +++ a/C4/Circulation.pm @@ -487,7 +487,7 @@ sub TooMany { my $rule_itemtype = $maxissueqty_rule->itemtype; my @types; - unless ( $rule_itemtype ) { + unless ( $rule_itemtype || $parent_maxissueqty_rule ) { # matching rule has the default item type, so count only # those existing loans that don't fall under a more # specific rule @@ -519,7 +519,7 @@ sub TooMany { while ( my $c = $checkouts->next ) { my $itemtype = $c->item->effective_itemtype; - unless ( $rule_itemtype ) { + unless ( $rule_itemtype || $parent_maxissueqty_rule ) { next if grep {$_ eq $itemtype} @types; } else { next unless grep {$_ eq $itemtype} @types; --