use strict;
use FS::Record qw(dbdef);
+use Carp qw(confess);
=head1 NAME
my( $self, $end ) = ( shift, shift );
my $table = $self->table;
- my $pkey = dbdef->table($table)->primary_key
- or die "can't (yet) search history table $table without a primary key";
+ my $real_table = ($table =~ /^h_(.*)$/) ? $1 : $table;
+ my $pkey = dbdef->table($real_table)->primary_key
+ or die "can't (yet) search history table $real_table without a primary key";
+
+ unless ($end) {
+ confess 'Called sql_h_search without END_TIMESTAMP';
+ }
my $notcancelled = '';
if ( scalar(@_) && $_[0] ) {
'',
- 'maintable',
+ 'AS maintable',
);
}
+=item sql_h_searchs END_TIMESTAMP [ START_TIMESTAMP ]
+
+Like sql_h_search, but limited to the single most recent record (before
+END_TIMESTAMP)
+
+=cut
+
+sub sql_h_searchs {
+ my $self = shift;
+ my($select, $where, $cacheobj, $as) = $self->sql_h_search(@_);
+ $where .= ' LIMIT 1';
+ ($select, $where, $cacheobj, $as);
+}
+
=back
=head1 BUGS