Projekt

Allgemein

Profil

Herunterladen (2,58 KB) Statistiken
| Zweig: | Markierung: | Revision:
#
# 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

(6-6/15)