Dnia Tue, Sep 13, 2005 at 08:46:49PM +0200 A.L.E.C napisał(a):
Andrzej Banach napisał(a):
A moze ktos powie jak uproscic te zapytanie by wyszukiwanie bilansu i danych abonenta twalo krocej??
nie potrzebujesz złaczenia z nodes:
Zgadza sie i po wyrzuceniu teraz wszystko ladnie i szybciutko dziala; Jak sie komus przyda to wysylam zamiennik perlowego skryptu lms-cutoff w tscript'cie z ustalaniem po ilu abonamentach user ma zostac odlaczony. Bardzo latwo rozbudowac go o wlaczanie warningow i ustawianie message. Jak nie ma w nim bledow to moze mozna go dodac do dokumentacji jako przyklad?? Bo dalej ta dokumentacja jest bardzo uboga o przyklady:P
zawartosc instancji script: ---cut---
{multiplier = 2} /* ilosc nieoplaconych abonamentow */
{CUST=SELECT customers.id AS id, SUM((type * -2 +7) * cash.value) AS balance FROM customers LEFT JOIN cash ON customers.id = cash.customerid AND (cash.type = 3 OR cash.type = 4) WHERE deleted = 0 GROUP BY customers.id}
{OBLIGATIONS=SELECT customerid AS id, SUM((100-discount)/100*tariffs.value) AS value FROM assignments LEFT JOIN tariffs ON (assignments.tariffid=tariffs.id) WHERE NOT suspended GROUP BY customerid}
{for (r=0; r<number(CUST); r++)} { if (CUST[r].balance < (- multiplier * OBLIGATIONS[r].value))} { UPDATE nodes SET access=0 WHERE ownerid = {CUST[r].id}} { /if} {/for}
---cut---