A.6. AsciiBackend

    GlobalSub <<EOS
    sub AsciiBackend {
        package Vend::Order;
        $Vend::Order::override_track_order = \&track_order;
        sub track_order_backend {
            my ($order_no,$order_report) = @_;
            my ($c,$i);
            my (@backend);
    
            @backend = split /\s*,\s*/, $Vend::Cfg->{BackendOrder};
    
            if(@backend and $Vend::Cfg->{AsciiBackend}) {
                my(@ary);
                push @ary, $order_no;
                for(@backend) {
                    push @ary, $::Values->{$_};
                }
                foreach $i (0 .. $#$Vend::Items) {
                    push @ary, $Vend::Items->[$i]{'code'};
                    push @ary, $Vend::Items->[$i]{'quantity'};
                    if ($Vend::Cfg->{UseModifier}) {
                        foreach $j (@{$Vend::Cfg->{UseModifier}}) {
                            push @ary, $Vend::Items->[$i]->{$j}
                        }
                    }
                }
                logData ($Vend::Cfg->{AsciiBackend}, @ary);
            }
            $Vend::Order::override_track_order->($order_no, $order_report);
        }
        *track_order = \&Vend::Order::override_track_order;
    }
    EOS
    
    AddDirective BackendOrder
    AddDirective AsciiBackend