@@ -, +, @@ group for this vendor. click on the 'generate edifact order' button. You should get a 500 error. order' button has been replaced with a note that there is "No EDIFACT configuration for ". --- acqui/basketgroup.pl | 29 +++++++++++++++++++--- .../prog/en/modules/acqui/basketgroup.tt | 11 +++++++- 2 files changed, 35 insertions(+), 5 deletions(-) --- a/acqui/basketgroup.pl +++ a/acqui/basketgroup.pl @@ -216,8 +216,15 @@ sub generate_edifact_orders { my $baskets = GetBasketsByBasketgroup($basketgroupid); my $ean = get_edifact_ean(); - for my $basket ( @{$baskets} ) { - create_edi_order( { ean => $ean, basketno => $basket->{basketno}, } ); + if($ean) { + for my $basket ( @{$baskets} ) { + create_edi_order( { ean => $ean, basketno => $basket->{basketno}, } ); + } + } else { + my $booksellerid = $input->param('booksellerid') || 0; + print $input->redirect('/cgi-bin/koha/acqui/basketgroup.pl?booksellerid=' . + $booksellerid . + '&message=No%20EDIFACT%20Setup'); } return; } @@ -236,6 +243,11 @@ my $op = $input->param('op') || 'display'; # - display : display the list of all basketgroups for a vendor my $booksellerid = $input->param('booksellerid'); $template->param(booksellerid => $booksellerid); +my $bookseller = Koha::Acquisition::Booksellers->find( $booksellerid ); +my $schema = Koha::Database->new()->schema(); +my $rs = $schema->resultset('VendorEdiAccount')->search( + { vendor_id => $booksellerid, } ); +$template->param( ediaccount => ($rs->count > 0)); if ( $op eq "add" ) { # @@ -387,8 +399,17 @@ if ( $op eq "add" ) { } elsif ( $op eq 'ediprint') { my $basketgroupid = $input->param('basketgroupid'); - generate_edifact_orders( $basketgroupid ); - exit; + if ($template->param( 'ediaccount' )) { + generate_edifact_orders( $basketgroupid ); + exit; + } else { + $template->param('NoEDIMessage' => 1); + my $basketgroups = &GetBasketgroups($booksellerid); + my $bookseller = Koha::Acquisition::Booksellers->find( $booksellerid ); + my $baskets = &GetBasketsByBookseller($booksellerid); + + displaybasketgroups($basketgroups, $bookseller, $baskets); + } }else{ # no param : display the list of all basketgroups for a given vendor my $basketgroups = &GetBasketgroups($booksellerid); --- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/basketgroup.tt +++ a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/basketgroup.tt @@ -146,7 +146,11 @@ function submitForm(form) {
Reopen this basket group
Export this basket group as CSV
Print this basket group in PDF
+ [% IF (ediaccount) %]
Generate EDIFACT order
+ [% ELSE %] +
+ [% END %] [% END %] [% IF (name && closedbg) %] @@ -291,6 +295,7 @@ function submitForm(form) {
New basket group

Basket grouping for [% booksellername |html %]

+ [% IF (NoEDIMessage) %]
No EDIFACT configuration for [% booksellername |html %]
[% END %]