use utf8;
use warnings; no warnings "redefine";
use strict;
use Dbase::Help qw(DoFn Do DoTrans);

# Flag=1: liefere die ID nur dann zurück, wenn neu angelegt

sub add_persomonat($$;$) {
	my($person,$monat,$flag) = @_;
	$flag=0 unless defined $flag;
	my $sel;
	if($person) {
		$sel = "person=$person";
	} else {
		$sel = "person IS NULL";
		$person="NULL";
	}
	return DoTrans {
		my $mid = DoFn("select id from persomonat where monat=$monat and $sel");
		return (($flag&1) ? undef : $mid) if $mid;

		return Do("insert into persomonat set monat=$monat, person=$person");
	};
}
1;
