$RTx::Report::VERSION = '0.00_08';

# Autogenerated by DBIx::SearchBuilder factory (by <jesse@bestpractical.com>)
# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST.  
# 
# !! DO NOT EDIT THIS FILE !!
#

use strict;


=head1 NAME

RTx::Report


=head1 SYNOPSIS

=head1 DESCRIPTION

=head1 METHODS

=cut

package RTx::Report;
use RT::Record; 
use RT::Queue;


use vars qw( @ISA );
@ISA= qw( RT::Record );

sub _Init {
  my $self = shift; 

  $self->Table('Reports');
  $self->SUPER::_Init(@_);
}





=head2 Create PARAMHASH

Create takes a hash of values and creates a row in the database:

  varchar(200) 'Name'.
  varchar(255) 'Category'.
  varchar(255) 'Description'.
  varchar(255) 'ReportSource'.
  longtext 'Content'.
  int(11) 'Queue'.
  int(11) 'Owner'.
  smallint(6) 'Disabled'.

=cut




sub Create {
    my $self = shift;
    my %args = ( 
                Name => '',
                Category => '',
                Description => '',
                ReportSource => '',
                Content => '',
                Queue => '0',
                Owner => '0',
                Disabled => '0',

		  @_);
    $self->SUPER::Create(
                         Name => $args{'Name'},
                         Category => $args{'Category'},
                         Description => $args{'Description'},
			 ReportSource => $args{'ReportSource'},
                         Content => $args{'Content'},
                         Queue => $args{'Queue'},
                         Owner => $args{'Owner'},
                         Disabled => $args{'Disabled'},
);

}



=head2 id

Returns the current value of id. 
(In the database, id is stored as int(11).)


=cut


=head2 Name

Returns the current value of Name. 
(In the database, Name is stored as varchar(200).)



=head2 SetName VALUE


Set Name to VALUE. 
Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
(In the database, Name will be stored as a varchar(200).)


=cut


=head2 Category

Returns the current value of Category. 
(In the database, Category is stored as varchar(255).)



=head2 SetCategory VALUE


Set Category to VALUE. 
Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
(In the database, Category will be stored as a varchar(255).)


=cut


=head2 Description

Returns the current value of Description. 
(In the database, Description is stored as varchar(255).)



=head2 SetDescription VALUE


Set Description to VALUE. 
Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
(In the database, Description will be stored as a varchar(255).)


=cut


=head2 ReportSource

Returns the current value of ReportSource.
(In the database, ReportSource is stored as varchar(255).)



=head2 SetReportSource VALUE


Set ReportSource to VALUE. 
Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
(In the database, ReportSource will be stored as a varchar(255).)


=cut


=head2 Content

Returns the current value of Content. 
(In the database, Content is stored as longtext.)



=head2 SetContent VALUE


Set Content to VALUE. 
Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
(In the database, Content will be stored as a longtext.)


=cut


=head2 Queue

Returns the current value of Queue. 
(In the database, Queue is stored as int(11).)



=head2 SetQueue VALUE


Set Queue to VALUE. 
Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
(In the database, Queue will be stored as a int(11).)


=cut


=head2 QueueObj

Returns the Queue Object which has the id returned by Queue


=cut

sub QueueObj {
	my $self = shift;
	my $Queue =  RT::Queue->new($self->CurrentUser);
	$Queue->Load($self->__Value('Queue'));
	return($Queue);
}

=head2 LastUpdatedBy

Returns the current value of LastUpdatedBy. 
(In the database, LastUpdatedBy is stored as int(11).)


=cut


=head2 LastUpdated

Returns the current value of LastUpdated. 
(In the database, LastUpdated is stored as datetime.)


=cut


=head2 Owner

Returns the current value of Owner. 
(In the database, Owner is stored as int(11).)



=head2 SetOwner VALUE


Set Owner to VALUE. 
Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
(In the database, Owner will be stored as a int(11).)


=cut


=head2 Creator

Returns the current value of Creator. 
(In the database, Creator is stored as int(11).)


=cut


=head2 Created

Returns the current value of Created. 
(In the database, Created is stored as datetime.)


=cut


=head2 Disabled

Returns the current value of Disabled. 
(In the database, Disabled is stored as smallint(6).)



=head2 SetDisabled VALUE


Set Disabled to VALUE. 
Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
(In the database, Disabled will be stored as a smallint(6).)


=cut



sub _ClassAccessible {
    {
     
        id =>
		{read => 1, type => 'int(11)', default => ''},
        Name => 
		{read => 1, write => 1, type => 'varchar(200)', default => ''},
        Category => 
		{read => 1, write => 1, type => 'varchar(255)', default => ''},
        Description => 
		{read => 1, write => 1, type => 'varchar(255)', default => ''},
        ReportSource => 
		{read => 1, write => 1, type => 'varchar(255)', default => ''},
        Content => 
		{read => 1, write => 1, type => 'longtext', default => ''},
        Queue => 
		{read => 1, write => 1, type => 'int(11)', default => '0'},
        LastUpdatedBy => 
		{read => 1, auto => 1, type => 'int(11)', default => '0'},
        LastUpdated => 
		{read => 1, auto => 1, type => 'datetime', default => ''},
        Owner => 
		{read => 1, write => 1, type => 'int(11)', default => '0'},
        Creator => 
		{read => 1, auto => 1, type => 'int(11)', default => '0'},
        Created => 
		{read => 1, auto => 1, type => 'datetime', default => ''},
        Disabled => 
		{read => 1, write => 1, type => 'smallint(6)', default => '0'},

 }
};


        eval "require RTx::Report_Overlay";
        if ($@ && $@ !~ qr{^Can't locate RTx/Report_Overlay.pm}) {
            die $@;
        };

        eval "require RTx::Report_Vendor";
        if ($@ && $@ !~ qr{^Can't locate RTx/Report_Vendor.pm}) {
            die $@;
        };

        eval "require RTx::Report_Local";
        if ($@ && $@ !~ qr{^Can't locate RTx/Report_Local.pm}) {
            die $@;
        };




=head1 SEE ALSO

This class allows "overlay" methods to be placed
into the following files _Overlay is for a System overlay by the original author,
_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations.  

These overlay files can contain new subs or subs to replace existing subs in this module.

If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line 

   no warnings qw(redefine);

so that perl does not kick and scream when you redefine a subroutine or variable in your overlay.

RTx::Report_Overlay, RTx::Report_Vendor, RTx::Report_Local

=cut


1;
