[lms] lms-notify.php wysyła do wszystkich powiadomienia...
Jarosław Kłopotek - INTERDUO
jkl w interduo.pl
Pią, 15 Cze 2018, 20:17:03 CEST
W dniu 15.06.2018 o 16:36, VIRTUAL FUTURE SP. Z O.O. pisze:
> Witam wszystkich, potrzebuje malej pomocy z lms-notify.php mianowicie,
> po ustawieniu wszystkiego w LMS UI (debtors_limit, debtros_days, itd..)
> wysyła mi wiadomości do wszystkich moich klientów (oczywiście dałem
> sobie inny email na testy) info o zaleglosci... po grzebaniu w kodzie
> wyciagnalem sobie kawalek kodu ktory daje zapytanie do sql:
>
> " SELECT c.id, c.pin, c.lastname, c.name,
> SUM(value) AS balance, b.balance AS totalbalance,
> m.email, x.phone, divisions.account
> FROM customers c
> LEFT JOIN divisions ON divisions.id = c.divisionid
> LEFT JOIN (
> SELECT customerid, SUM(value) AS balance FROM
> cash GROUP BY customerid
> ) b ON b.customerid = c.id
> JOIN cash ON (c.id = cash.customerid)
> LEFT JOIN (SELECT GROUP_CONCAT(contact SEPARATOR ',')
> AS email, customerid
> FROM customercontacts
> WHERE (type & 16424) = 40
> GROUP BY customerid
> ) m ON (m.customerid = c.id)
> LEFT JOIN (SELECT GROUP_CONCAT(contact SEPARATOR ',')
> AS phone, customerid
> FROM customercontacts
> WHERE (type & 16417) = 33
> GROUP BY customerid
> ) x ON (x.customerid = c.id)
> LEFT JOIN documents d ON d.id = cash.docid
> LEFT JOIN (
> SELECT SUM(value) AS totalvalue, docid FROM cash
> JOIN documents d2 ON d2.id = cash.docid
> WHERE d2.type = 3
> GROUP BY docid
> ) tv ON tv.docid = d.id
> WHERE c.cutoffstop < 1529072370 AND ((cash.docid IS
> NULL AND ((cash.type <> 0 AND cash.time < 1529072370)
> OR (cash.type = 0 AND cash.time + ((CASE
> c.paytime WHEN -1 THEN
> (CASE WHEN divisions.inv_paytime IS
> NULL THEN 7 ELSE divisions.inv_paytime END) ELSE c.paytime END) + 31)
> * 86400 < 1529072370)))
> OR (cash.docid IS NOT NULL AND ((d.type = 2
> AND cash.time < 1529072370)
> OR (d.type = 3 AND cash.time <
> 1529072370 AND tv.totalvalue >= 0)
> OR (((d.type = 3 AND tv.totalvalue < 0)
> OR d.type IN (1, 5)) AND d.cdate +
> (d.paytime + 31) * 86400 < 1529072370))))
> GROUP BY c.id, c.pin, c.lastname, c.name, b.balance,
> m.email, x.phone, divisions.account
> HAVING SUM(value) < -100"
>
> i wysypuje mi listę wszystkich moich "zadłużonych klientów", tyle ze
> większość klientów ma saldo "zerowe".
> czyli totalbalance zgadza się i jest właściwa kwota klienta a w
> "balance" są jakieś kosmiczne kwoty na - nie uwzględniając "wpłat",
> czy to jest problem z moja baza czy po prostu coś jest nie tak z tym
> skryptem?
>
> +-----------+--------------+------
> | balance | totalbalance | email
> +-----------+--------------+------
> | -5781.00 | 0.00 | ksieg
> | -100.46 | -49.00 | m.ole
> | -801.00 | 0.00 | NULL
> | -276.00 | -69.00 | zbign
> | -3120.00 | 0.00 | NULL
> | -198.00 | 0.00 | kamil
>
> Czy to jest poprawnce ze balance wychodzi na takich "-" saldach ? a
> dopiero totalbalance podaje prawidlowe kwoty ?
>
> Tak samo mam problem z notify "invoice"
> php lms-notify.php -c mail -t invoices --fakedate=2018/06/01 -d
>
> (C) 2001-2017 LMS Developers
> Using file /etc/lms/lms.ini as config.
> [mail/invoices] FRANKO Marek (0153) 04/06/2018/VFS: vf.kielce w gmail.com
> [mail/invoices] MAKUCH Rafał (0566) 26/06/2018/VFS: vf.kielce w gmail.com
> [mail/invoices] SZYMAŃSKI Sebastian (0572) 27/06/2018/VFS:
> vf.kielce w gmail.com
> [mail/invoices] MARCINKOWSKI Paweł (0622) 33/06/2018/VFS:
> vf.kielce w gmail.com
> [mail/invoices] WSPÓLNOTA MIESZKANIOWA NIERUCHOMOŚĆ PRZY UL.
> SEMINARYJSKA 6/8 (0625) 35/06/2018/VFS: vf.kielce w gmail.com
> [mail/invoices] PIĘTA Krzysztof (0630) 39/06/2018/VFS:
> vf.kielce w gmail.com
> [mail/invoices] P.H.U KAMIL KONDRACKI (0637) 41/06/2018/VFS:
> vf.kielce w gmail.com
>
> Wyrzuca mi klientow ktorzy teoretycznie powinni dostac wiadomosc o
> wystawionym dokuemencie...
> ale wysyla tylko tym ktorzy ! maja ustawione na "nie" zamiast "tak" to
> normalne?
>
> Zgoda na dostarczanie faktur pocztą elektroniczną: nie
Masz najnowsze stable?
--
Jarosław Kłopotek
kom. 607 893 111
Interduo Ł. Bujek, J. Kłopotek, J. Sowa s.c.
ul. Lubelska 36B/40, 21-100 Lubartów
tel. 81 475 30 00
Więcej informacji o liście lms