Revision 9ddaeed0
Von Tamino Steinert vor etwa 1 Jahr hinzugefügt
SL/AR.pm | ||
---|---|---|
42 | 42 |
use SL::IO; |
43 | 43 |
use SL::MoreCommon; |
44 | 44 |
use SL::DB::Default; |
45 |
use SL::DB::Invoice; |
|
46 |
use SL::DB::EmailJournal; |
|
45 | 47 |
use SL::DB::ValidityToken; |
46 | 48 |
use SL::TransNumber; |
47 | 49 |
use SL::Util qw(trim); |
... | ... | |
980 | 982 |
|
981 | 983 |
map { IO->set_datepaid(table => 'ar', id => $_, dbh => $dbh) } ($id, $new_id); |
982 | 984 |
|
985 |
if ($form->{workflow_email_journal_id}) { |
|
986 |
my $ar_transaction_storno = SL::DB::Invoice->new(id => $new_id)->load; |
|
987 |
my $email_journal = SL::DB::EmailJournal->new( |
|
988 |
id => delete $form->{workflow_email_journal_id} |
|
989 |
)->load; |
|
990 |
$email_journal->link_to_record_with_attachment( |
|
991 |
$ar_transaction_storno, |
|
992 |
delete $::form->{email_attachment_id} |
|
993 |
); |
|
994 |
} |
|
995 |
|
|
983 | 996 |
return 1; |
984 | 997 |
} |
985 | 998 |
|
bin/mozilla/ar.pl | ||
---|---|---|
53 | 53 |
use SL::DB::InvoiceItem; |
54 | 54 |
use SL::DB::RecordTemplate; |
55 | 55 |
use SL::DB::Tax; |
56 |
use SL::DB::EmailJournal; |
|
56 | 57 |
use SL::DB::ValidityToken; |
57 | 58 |
use SL::Helper::Flash qw(flash flash_later); |
58 | 59 |
use SL::Locale::String qw(t8); |
... | ... | |
263 | 264 |
|
264 | 265 |
AR->get_transdate(\%myconfig, $form); |
265 | 266 |
$form->{initial_transdate} = $form->{transdate}; |
267 |
$form->{initial_customer_id} = $form->{customer_id}; |
|
266 | 268 |
create_links(dont_save => 1); |
267 | 269 |
$form->{transdate} = $form->{initial_transdate}; |
270 |
$form->{customer_id} = $form->{initial_customer_id} if $form->{initial_customer_id}; |
|
268 | 271 |
|
269 | 272 |
if ($form->{customer_id}) { |
270 | 273 |
my $last_used_ar_chart = SL::DB::Customer->load_cached($form->{customer_id})->last_used_ar_chart; |
... | ... | |
279 | 282 |
$main::lxdebug->leave_sub(); |
280 | 283 |
} |
281 | 284 |
|
285 |
sub add_from_email_journal { |
|
286 |
die "No 'email_journal_id' was given." unless ($::form->{email_journal_id}); |
|
287 |
&add; |
|
288 |
} |
|
289 |
|
|
290 |
sub edit_with_email_journal_workflow { |
|
291 |
my ($self) = @_; |
|
292 |
die "No 'email_journal_id' was given." unless ($::form->{email_journal_id}); |
|
293 |
$::form->{workflow_email_journal_id} = delete $::form->{email_journal_id}; |
|
294 |
$::form->{workflow_email_attachment_id} = delete $::form->{email_attachment_id}; |
|
295 |
|
|
296 |
&edit; |
|
297 |
} |
|
298 |
|
|
282 | 299 |
sub edit { |
283 | 300 |
$main::lxdebug->enter_sub(); |
284 | 301 |
|
... | ... | |
862 | 879 |
} |
863 | 880 |
# /saving the history |
864 | 881 |
|
882 |
if ($form->{email_journal_id} && $form->{id} ne "") { |
|
883 |
my $ar_transaction = SL::DB::Invoice->new(id => $form->{id})->load; |
|
884 |
my $email_journal = SL::DB::EmailJournal->new( |
|
885 |
id => delete $form->{email_journal_id} |
|
886 |
)->load; |
|
887 |
$email_journal->link_to_record_with_attachment($ar_transaction, delete $::form->{email_attachment_id}); |
|
888 |
} |
|
889 |
|
|
865 | 890 |
if (!$inline) { |
866 | 891 |
my $msg = $locale->text("AR transaction '#1' posted (ID: #2)", $form->{invnumber}, $form->{id}); |
867 | 892 |
if ($::instance_conf->get_ar_add_doc && $::instance_conf->get_doc_storage) { |
... | ... | |
886 | 911 |
my $form = $main::form; |
887 | 912 |
my %myconfig = %main::myconfig; |
888 | 913 |
|
914 |
$form->{email_journal_id} = delete $form->{workflow_email_journal_id}; |
|
915 |
$form->{email_attachment_id} = delete $form->{workflow_email_attachment_id}; |
|
916 |
|
|
889 | 917 |
map { delete $form->{$_} } qw(printed emailed queued invnumber deliverydate id datepaid_1 gldate_1 acc_trans_id_1 source_1 memo_1 paid_1 exchangerate_1 AP_paid_1 storno); |
890 | 918 |
$form->{paidaccounts} = 1; |
891 | 919 |
$form->{rowcount}--; |
templates/design40_webpages/ar/form_header.html | ||
---|---|---|
4 | 4 |
[% USE LxERP %] |
5 | 5 |
[% USE P %] |
6 | 6 |
|
7 |
<h1>[% title | html %]</h1> |
|
7 |
<h1> |
|
8 |
[% IF workflow_email_journal_id; LxERP.t8("Email Journal Workflow") _ " - "; END; %] |
|
9 |
[% title %] |
|
10 |
</h1> |
|
8 | 11 |
|
9 | 12 |
[% INCLUDE 'common/flash.html' %] |
10 | 13 |
|
... | ... | |
24 | 27 |
[% IF !id %] |
25 | 28 |
[% L.hidden_tag('form_validity_token', form_validity_token) %] |
26 | 29 |
[% END %] |
30 |
[% L.hidden_tag('email_journal_id', email_journal_id) %] |
|
31 |
[% L.hidden_tag('email_attachment_id', email_attachment_id) %] |
|
32 |
[% L.hidden_tag('workflow_email_journal_id', workflow_email_journal_id) %] |
|
33 |
[% L.hidden_tag('workflow_email_attachment_id', workflow_email_attachment_id) %] |
|
27 | 34 |
|
28 | 35 |
[% IF saved_message %]<p class="message message_info">[% saved_message | html %]</p>[% END %] |
29 | 36 |
|
... | ... | |
31 | 38 |
|
32 | 39 |
<ul> |
33 | 40 |
<li><a href="#ui-tabs-basic-data">[% 'Basic Data' | $T8 %]</a></li> |
41 |
[% IF email_attachment_id || workflow_email_attachment_id %] |
|
42 |
<li><a href="controller.pl?action=EmailJournal/attachment_preview&attachment_id=[% HTML.url(email_attachment_id || workflow_email_attachment_id) %]">[% 'Email Attachment Preview' | $T8 %]</a></li> |
|
43 |
[% END %] |
|
34 | 44 |
[% IF id %] |
35 | 45 |
[% IF INSTANCE_CONF.get_doc_storage %] |
36 | 46 |
<li><a href="controller.pl?action=File/list&file_type=attachment&object_type=invoice&object_id=[% HTML.url(id) %]">[% 'Attachments' | $T8 %]</a></li> |
... | ... | |
45 | 55 |
|
46 | 56 |
<div id="ui-tabs-basic-data"> |
47 | 57 |
|
58 |
[% IF email_attachment_id || workflow_email_attachment_id%] |
|
59 |
<div class="wrapper" id="email_attachment_wrapper"> |
|
60 |
[% |
|
61 |
BLOCK panel_1; |
|
62 |
P.email_journal.attachment_preview( |
|
63 |
email_attachment_id || workflow_email_attachment_id, |
|
64 |
style="height:600px" |
|
65 |
); |
|
66 |
END; |
|
67 |
INCLUDE 'common/toggle_panel.html' |
|
68 |
block_name='panel_1' |
|
69 |
button_closed = LxERP.t8('Show Attachment') |
|
70 |
button_open = LxERP.t8('Hide Attachment') |
|
71 |
; |
|
72 |
%] |
|
73 |
</div> |
|
74 |
[% END %] |
|
75 |
|
|
48 | 76 |
<div class="wrapper"> |
49 | 77 |
|
50 | 78 |
<table class="tbl-horizontal"> |
templates/webpages/ar/form_header.html | ||
---|---|---|
3 | 3 |
[%- USE T8 %] |
4 | 4 |
[%- USE LxERP %][%- USE P -%] |
5 | 5 |
|
6 |
<h1>[% title | html %]</h1> |
|
6 |
<h1> |
|
7 |
[% IF workflow_email_journal_id; LxERP.t8("Email Journal Workflow") _ " - "; END; %] |
|
8 |
[% title | html %] |
|
9 |
</h1> |
|
7 | 10 |
|
8 | 11 |
[%- INCLUDE 'common/flash.html' %] |
9 | 12 |
|
... | ... | |
23 | 26 |
[% IF !id %] |
24 | 27 |
[% L.hidden_tag('form_validity_token', form_validity_token) %] |
25 | 28 |
[% END %] |
29 |
[% L.hidden_tag('email_journal_id', email_journal_id) %] |
|
30 |
[% L.hidden_tag('email_attachment_id', email_attachment_id) %] |
|
31 |
[% L.hidden_tag('workflow_email_journal_id', workflow_email_journal_id) %] |
|
32 |
[% L.hidden_tag('workflow_email_attachment_id', workflow_email_attachment_id) %] |
|
26 | 33 |
|
27 | 34 |
[%- IF saved_message %]<p>[% saved_message | html %]</p>[% END %] |
28 | 35 |
|
29 | 36 |
<div class="tabwidget"> |
30 | 37 |
<ul> |
31 | 38 |
<li><a href="#ui-tabs-basic-data">[% 'Basic Data' | $T8 %]</a></li> |
39 |
[% IF email_attachment_id || workflow_email_attachment_id %] |
|
40 |
<li><a href="controller.pl?action=EmailJournal/attachment_preview&attachment_id=[% HTML.url(email_attachment_id || workflow_email_attachment_id) %]">[% 'Email Attachment Preview' | $T8 %]</a></li> |
|
41 |
[% END %] |
|
32 | 42 |
[%- IF id %] |
33 | 43 |
[%- IF INSTANCE_CONF.get_doc_storage %] |
34 | 44 |
<li><a href="controller.pl?action=File/list&file_type=attachment&object_type=invoice&object_id=[% HTML.url(id) %]">[% 'Attachments' | $T8 %]</a></li> |
Auch abrufbar als: Unified diff
Workflow: E-Mail → Debitorenbuchung hinzugefügt