use utf8;
use warnings; no warnings "redefine";
use strict;
use Fehler qw(problem);
use Loader qw(valid_fnbatch log_update select_descr);
use Dbase::Help qw(DoFn Do quote);


sub set_fnbatch_mandant($;$) {
	my($id,$kn) = @_;

	return undef unless valid_fnbatch($id,16);

	my($stat,$mandant) = DoFn("select status,mandant from fnbatch where id = $id");
	if($stat == 4) { # OK
		return problem "Das ist eine Echtbuchung!" if $mandant == 1;

		my $kk = select_descr("fnmandant",0,"","","!hide");
		return undef unless defined $kk;
		return problem "Dafür muss der Lauf wiederholt werden!" if $kk == 1;

		my $daten = DoFn("select daten from fnbatch where id = $id");
		$daten =~ s/^\(\+\)/( )/mg; # Dateien aufwecken

		log_update("fnbatch","id",$id,undef,"mandant","status","daten",undef,$mandant,get_descr("fnstatus",$stat));
		Do("update fnbatch set mandant=$kk, status=1, daten='${\quote $daten}' where id=$id");
	} else { # normales Resubmit
		log_update("fnbatch","id",$id,undef,"status","resubmit",undef,get_descr("fnstatus",$stat,1));
		Do("update fnbatch set status=1 where id=$id");
	}
	$id;
}
1;
