kivitendo/SL/Helper/GlAttachments.pm @ 7b1da9c3
fd2e0902 | Martin Helmling | #
|
|
# Helper for General Ledger Reports
|
|||
#
|
|||
# 1. Fetch the Count of PDF-Documents of one item of a General Ledger Report
|
|||
# 2. Append the contents of all items of a General Ledger Report
|
|||
package SL::Helper::GlAttachments;
|
|||
use strict;
|
|||
use Exporter 'import';
|
|||
our @EXPORT_OK = qw(count_gl_attachments append_gl_pdf_attachments);
|
|||
our %EXPORT_TAGS = (
|
|||
all => \@EXPORT_OK,
|
|||
);
|
|||
use SL::File;
|
|||
my %gl_types = (
|
|||
'ar' => 'invoice',
|
|||
'ap' => 'purchase_invoice',
|
|||
'gl' => 'gl_transaction',
|
|||
);
|
|||
#
|
|||
# Fetch the Count of PDF-Documents with are related to the $id parameter
|
|||
# The parameter $gltype may be 'ar','ap' or 'gl'.
|
|||
#
|
|||
sub count_gl_pdf_attachments {
|
|||
my ($self,$id,$gltype) = @_;
|
|||
return SL::File->get_all_count(object_id => $id,
|
|||
object_type => $gl_types{$gltype},
|
|||
mime_type => 'application/pdf',
|
|||
);
|
|||
}
|
|||
# Append the contents of all PDF-Documents to the base $content
|
|||
# This Method is only used in SL/Reportgenerator.pm if the $form->{GD} array is set.
|
|||
# The elements of the array need the two elements $ref->{type},$ref->{id}
|
|||
#
|
|||
sub append_gl_pdf_attachments {
|
|||
my ($self,$form,$content) = @_;
|
|||
my @filelist;
|
|||
foreach my $ref (@{ $form->{GL} }) {
|
|||
my @files = SL::File->get_all(object_id => $ref->{id},
|
|||
object_type => $gl_types{$ref->{type}},
|
|||
mime_type => 'application/pdf',
|
|||
);
|
|||
push @filelist, $_->get_file for @files;
|
|||
}
|
|||
return $self->merge_pdfs(file_names => \@filelist , inp_content => $content );
|
|||
}
|
|||
1;
|
|||
__END__
|
|||
=encoding utf-8
|
|||
=head1 NAME
|
|||
SL::Helper::GlAttachments - Helper for General Ledger Reports
|
|||
=head1 SYNOPSIS
|
|||
$self->count_gl_pdf_attachments($ref->{id},$ref->{type});
|
|||
$self->append_gl_pdf_attachments($form,$base_content);
|
|||
=head1 DESCRIPTION
|
|||
Helper for General Ledger Reports
|
|||
1. Fetch the Count of PDF-Documents of one item of a General Ledger Report
|
|||
2. Append the contents of all items of a General Ledger Report
|
|||
=head1 METHODS
|
|||
=head2 C<count_gl_pdf_attachments>
|
|||
count_gl_pdf_attachments($id,$type);
|
|||
Fetch the Count of PDF-Documents with are related to the $id parameter
|
|||
The parameter $type may be 'ar','ap' or 'gl'.
|
|||
=head2 C<append_gl_pdf_attachments>
|
|||
append_gl_pdf_attachments($form,$content);
|
|||
Append the contents of all PDF-Documents to the base $content
|
|||
This Method is only used in SL/Reportgenerator.pm if the $form->{GD} array is set.
|
|||
The elements of the array need the two elements $ref->{type},$ref->{id}
|
|||
=head1 AUTHOR
|
|||
Martin Helmling E<lt>martin.helmling@opendynamic.deE<gt>
|
|||
=cut
|