use utf8;
use warnings; no warnings "redefine";
use strict;

use Dbase::Globals qw(name_dienst timerange);
use Dbase::Help qw(DoSelect isotime);
use Loader qw(line_printer);

sub list_xtarife(;$) {
	my($kn) = @_;

	line_printer;

	my $hdr;
	my $res = DoSelect {
		print $Db::pr_fh <<END unless $hdr++;
Kunde       ## Tarif
END
		my($kund,$name,$anzahl,$dienst,$beginn,$ende,$notiz,$info) = @_;
		$info="" unless defined $info;

		goto out unless
		printf $Db::pr_fh "%-11s %2d %s/%s %s %s %s\n",$kund,$anzahl,$name,name_dienst($dienst),$info,timerange($beginn,$ende),($notiz ? " zuletzt ".isotime($notiz) : "");
	} <<'_';
	SELECT   kunde.name,
	         tarifname.name,
	         tarifkunde.anzahl,
	         tarifkunde.dienst,
	         tarifkunde.beginn,
	         tarifkunde.ende,
	         tarifkunde.notiz,
	         tarifkunde.infotext
	FROM     kunde, tarifkunde, tarifname
	WHERE    tarifname.id = tarifkunde.tarifname
	     AND tarifkunde.kunde = kunde.id
	ORDER BY kunde.name, tarifkunde.ende
_
	print "(leer)\n" unless $res;

out:
	$res;
}

1;
