my $t = new STRTicket(); package Ticket; sub new { my $class = shift; my $ticketid = shift; my $self= { 'TICKETID' => undef, 'SOURCE' => undef, 'CREATEDBY' => undef, 'OWNER' => undef, 'MODIFIEDBY'=> undef, 'CREATEDON' => undef, 'MODIFIEDON'=> undef, 'COMPANYNAME'=> undef, 'STATE' => undef, 'STATUS' => undef, 'BZTICKETS' => (), 'AGE' => undef, 'TITLE' => undef, }; bless $self, $class; if ( defined $ticket) { $self->{'TICKETID'} = $ticket; } else { die "Ticket object instantiated without a ticket id! This should never happen.\n"; } return $self; } sub load_bztickets($){ my $self= shift; my $dbh = shift; # pass in the database reference for Bugzilla } 1; package BZTicket; import Ticket; # use Ticket; @ISA = ('Ticket'); 1; package CRMTicket; import Ticket; #use Ticket; @ISA = ('Ticket'); 1; package STRTicket; import Ticket; # use Ticket; @ISA = ('Ticket'); 1;