Witam, jasne że jest sposób na rozliczanie z saldem >=0
update documents set closed=1 where type=1 and customerid in (select customerid from cash group by customerid HAVING SUM(value) >=0 )
Ponadto popełniłem skrypt który raz na dobę sprawdza czy s± wpłaty i rozlicza najstarsz± FV ( można pu¶cić kilka razy jak jest wiecej fv do rozliczenia )
--------------------------------------
#!/usr/local/bin/bash
echo "update documents set closed=1 where type=1 and customerid in (select customerid from cash group by customerid HAVING SUM(value) >=0 )" | /usr/local/bin/psql -A -t -F' ' --no-password -d lms -U lms
echo rozliczono pro userow
mace=" select a.customerid, abs( sum(a.value)) from cash a group by a.customerid having sum(a.value)<0 order by a.customerid "
echo $mace | /usr/local/bin/psql -A -t -F' ' --no-password -d lms -U lms | while read idd saldo ;
do
il_faktury=`echo "select count(id) from documents where customerid=$idd and type=1 and closed=0 having count(id)>1 " | /usr/local/bin/psql -A -t -F' ' --no-password -d lms -U lms `
if [ "$il_faktury" != "" ]; then
saldo_100=`echo "scale = 4 ; $saldo * 100 "| bc | cut -d. -f 1,1`
echo rozliczanie $idd saldo $saldo
q_suma="select sum(fak.value) from documents a left join invoicecontents fak on a.id = fak.docid where a.type=1 and a.customerid=$idd and a.closed=0"
suma=`echo $q_suma | /usr/local/bin/psql -A -t -F' ' --no-password -d lms -U lms `
suma_100=`echo "scale = 4 ; $suma * 100 "| bc | cut -d. -f 1,1 `
#echo $suma_100 $saldo_100
if [ "$suma_100" -gt "$saldo_100" ]; then
echo "rozliczam najstarsza fre -=====================- $idd"
rozliczenie="update documents set closed=1 where id= (select a.id from documents a left join invoicecontents fak on a.id = fak.docid where a.type=1 and a.customerid=$idd and a.closed=0 order by a.id limit 1 ) "
echo $rozliczenie | /usr/local/bin/psql -A -t -F' ' --no-password -d lms -U lms
else
echo "brak faktur do rozliczenia id $idd"
fi
else
echo "brak faktur do rozliczen id $idd"
fi
done;
echo rozliczono i zakonczono
-------------------------------------------------------------------------
Pozdrawiam Miłosz
Jest jakas szansa aby wymusić jakim¶ zapytaniem do bazy odznaczenie FV jako zaplaconych osobom co maja saldo na 0 ?Bo np jak komus rozliczam kwotowo to ok saldo u klienta sie zmniejsza ale jak zobacze na FV to widze ze swieca sie jako nierozliczonea chciałbym je odznaczyc ale jest tego sporo i nie chce mi sie tego robic recznie
_______________________________________________
lms mailing list
lms@lists.lms.org.pl
http://lists.lms.org.pl/mailman/listinfo/lms