Биллинговая система Nodeny

Главная категория => Nodeny 50 => Тема начата: stix от 06 Ноября 2012, 23:49:24



Название: Суточный финансовый отчет
Отправлено: stix от 06 Ноября 2012, 23:49:24
в call.pl добавляем
sub Set_day_in_list
Код:
{
 my $hday="<select size=1 name=day>";
 $hday.="<option value=></option>";
 $hday.="<option value=$_>".($_+0)."</option>" for (1..31);
 $hday.="</select>";
 my $day=int $_[0];
 $hday=~s/=$day>/=$day selected>/;
 return $hday;
}
в report.pl добавляем
Код:
$Fday=int $F{day};
перед
Код:
$br2.'Для групп:'.$br2."<div id=grp>$out</div>".$br
вставляем так
Код:
&form('!'=>1,'#'=>1,&bold('Финансовый отчет за').$br."$day_list $mon_list $year_list".$br2.&submit_a('Показать').
или просто добавляем $day_list перед mon_list

далее после строки
Код:
&Error("Слева в меню отметьте группы, для которых необходимо сформировать отчет.",$tend) if $where_grp eq '';
добавляем
Код:
$year=$year_now;
$month=$mon_now;

if( $Fday )
{
   $month--;
   $time1=timelocal(0,0,0,$Fday,$month,$year);          # начало дня
   $time2=timelocal(59,59,23,$Fday,$month,$year);       # конец дня
   $time2++;
}else
{
   $month--;
   $time1=timelocal(0,0,0,1,$month,$year);              #  начало месяца
   if ($month<11) {$month++} else {$month=0; $year++}
   $time2=timelocal(0,0,0,1,$month,$year);              #  начало следущего месяца
}

строки:
Код:
$time1=timelocal(0,0,0,1,$Fmon-1,$Fyear); # начало месяца
if ($Fmon<12) {$mon=$Fmon; $year=$Fyear} else {$mon=0; $year=$Fyear+1}
$time2=timelocal(0,0,0,1,$mon,$year); # начало следущего месяца
закомментировать

должно получиться как в аттаче

дальше поправить мелочи.
вроде должно так работать, в перле не тру )


Название: Re: Суточный финансовый отчет
Отправлено: Redmen от 06 Ноября 2012, 23:55:11
+


Название: Re: Суточный финансовый отчет
Отправлено: stix от 07 Ноября 2012, 12:58:42
ой, забыл добавить сюда

Код:
$day_list=&Set_day_in_list;
вставить перед:
Код:
($mon_list,$mon_name)=&Set_mon_in_list($Fmon);
надо бы права уже править свои мессаги


Название: Re: Суточный финансовый отчет
Отправлено: Jovani от 07 Ноября 2012, 20:29:08
Код:
$Ftype=int $F{type}; # тип отчета
$Fyear=int $F{year};
$Fmon=int $F{mon};
$Fday=int $F{day}; #Првильно будет сюда дописать


Название: Re: Суточный финансовый отчет
Отправлено: stix от 07 Ноября 2012, 21:58:28
да, конечно.
у меня че-то с vim баги при копи-пасте.
а поправить посты не могу


Название: Re: Суточный финансовый отчет
Отправлено: stix от 07 Ноября 2012, 22:25:54
теперь надо бы вывести тоже самое в разделе платежи, чтобы по фильтрам категорий можно суммарную статистику глянуть


Название: Re: Суточный финансовый отчет
Отправлено: vddav от 14 Ноября 2012, 12:14:20
теперь надо бы вывести тоже самое в разделе платежи, чтобы по фильтрам категорий можно суммарную статистику глянуть
да да да!!) и еще б кол-во операций на вид платежа


Название: Re: Суточный финансовый отчет
Отправлено: Jovani от 24 Ноября 2012, 18:37:15
Есть проблема. При выборе за прошедшие месяцы, статистика постоянно показывает за текущий месяц.


Название: Re: Суточный финансовый отчет
Отправлено: Jovani от 24 Ноября 2012, 19:01:27
Точнее по дням предыдущую статистику показывает, а вот если выбрать любой предыдущий месяц(за весь месяц) показывает статистику текущего.


Название: Re: Суточный финансовый отчет
Отправлено: stix от 24 Ноября 2012, 19:41:23
ох, зря я сразу я писал сразу на форум быстрее, чем проверил )

там где:
$year=$year_now;
$month=$mon_now;

исправь на
$month=$Fmon;


Название: Re: Суточный финансовый отчет
Отправлено: stix от 24 Ноября 2012, 20:02:14
всмысле, чтобы было

$year=$year_now;
$month=$Fmon;


и для красоты, чтобы select у нас оставался на выбранном дне:
правим в report.pl
Код:
$day_list=&Set_day_in_list($Fday);


Название: Re: Суточный финансовый отчет
Отправлено: stix от 24 Ноября 2012, 20:15:01
блин, куда я спешу писать )

конечно же вот так нужно, чтобы было
Код:
$year=$Fyear;
$month=$Fmon;

дайте права модера )))


Название: Re: Суточный финансовый отчет
Отправлено: Jovani от 24 Ноября 2012, 20:17:37
Все нормально сейчас... Спасибо.