@@ -, +, @@ publication date doesn't reflect on the next issue generated - use the default values of the first page - for the second page : - Save --- C4/Serials.pm | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) --- a/C4/Serials.pm +++ a/C4/Serials.pm @@ -2325,7 +2325,7 @@ sub _get_next_date_week { my ($subscription, $freqdata, $year, $month, $day) = @_; my ($wkno, $yr) = Week_of_Year($year, $month, $day); - my $fa_dow = Day_of_Week(split /-/, $subscription->{firstacquidate}); + my $fa_dow = Day_of_Week($year, $month, $day); if ($subscription->{countissuesperunit} + 1 > $freqdata->{issuesperunit}){ $subscription->{countissuesperunit} = 1; @@ -2350,18 +2350,17 @@ sub _get_next_date_month { my ($subscription, $freqdata, $year, $month, $day) = @_; my $fa_day; - (undef, undef, $fa_day) = split /-/, $subscription->{firstacquidate}; if ($subscription->{countissuesperunit} + 1 > $freqdata->{issuesperunit}){ $subscription->{countissuesperunit} = 1; ($year,$month,$day) = Add_Delta_YM($year,$month,$day, 0, $freqdata->{unitsperissue}); my $days_in_month = Days_in_Month($year, $month); - $day = $fa_day <= $days_in_month ? $fa_day : $days_in_month; + $day = $day <= $days_in_month ? $day : $days_in_month; } else { # Try to guess the next day in month my $days_in_month = Days_in_Month($year, $month); - my $delta_days = int(($days_in_month - ($fa_day - 1)) / $freqdata->{issuesperunit}); + my $delta_days = int(($days_in_month - ($day - 1)) / $freqdata->{issuesperunit}); ($year,$month,$day) = Add_Delta_Days($year, $month, $day, $delta_days); $subscription->{countissuesperunit}++; } @@ -2377,13 +2376,12 @@ sub _get_next_date_year { if ($subscription->{countissuesperunit} + 1 > $freqdata->{issuesperunit}){ $subscription->{countissuesperunit} = 1; ($year) = Add_Delta_YM($year,$month,$day, $freqdata->{"unitsperissue"},0); - $month = $fa_month; my $days_in_month = Days_in_Month($year, $month); - $day = $fa_day <= $days_in_month ? $fa_day : $days_in_month; + $day = $day <= $days_in_month ? $day : $days_in_month; } else { # Try to guess the next day in year my $days_in_year = Days_in_Year($year,12); #Sum the days of all the months of this year - my $delta_days = int(($days_in_year - ($fa_day - 1)) / $freqdata->{issuesperunit}); + my $delta_days = int(($days_in_year - ($day - 1)) / $freqdata->{issuesperunit}); ($year,$month,$day) = Add_Delta_Days($year, $month, $day, $delta_days); $subscription->{countissuesperunit}++; } --