Field Type Null Key Default Extra -------- ----------- ------- ------ ---------- -------- id int(11) PRI 0 int_dow varchar(50) #### Field Type Null Key Default Extra ------------ ------------- ------- ------ ---------- -------------- interval_id int(11) PRI (null) auto_increment provider_id int(11) 0 personell_id int(11) 0 int_type int(11) 0 int_dow varchar(50) int_start time 00:00:00 int_end time 00:00:00 int_int decimal(10,0) 00 #### package AppSys::DBI; use Class::DBI::Iterator; use base 'Class::DBI::mysql'; AppSys::DBI->set_db('Main', 'DBI:mysql:appsys', '****', '****'); package AppSys::BusinessHours; use base AppSys::DBI; AppSys::BusinessHours->set_up_table("pr_businesshours"); AppSys::BusinessHours->has_a('int_dow' => 'AppSys::DOW'); package AppSys::DOW; use base AppSys::DBI; AppSys::DOW->set_up_table("as_dow"); #### @ints = AppSys::BusinessHours->search( provider_id => $provider_id, {order_by => 'int_dow'}); my @loh; #while ( my $day = $ints->next ) { foreach (@ints) { my $day = AppSys::BusinessHours->retrieve( $_->id ); my $hashref = { map { $_ => $day->get($_); } $day->columns }; push ( @loh, $hashref ); }