Obecnie pracujemy nad modułami do obsługi księgowości w LMS.
Nasze doświadczenie mówi że to wcale nie jest taka prosta sprawa, nawet gdy już wydaje się że coś działa okazuje się że można wygenerować scenariusz przy którym wszystko pada :).
Do obliczania odsetek próbowaliśmy podejść w ten sposób, że na kolejnej fakturze po wpłacie wyliczane są odsetki od poprzednich faktur które dana wpłata pokryła ( ilość dni jest liczona od momentu terminu płatności do momentu wpłaty ). Sam skrypt działa, jednak tylko w sytuacji gdy nie generujemy zobowiązań bez faktur lub innych operacji finansowych na koncie klienta.
Mamy również napisane moduły do generowania not odsetkowych. Działają one w taki sposób, że w momencie zapłaty przez klienta zaznacza się ręcznie faktury dla których mają być policzone odsetki i system generuje nowe obciążenia na koncie klienta oraz odpowiedni dokument w formacie pdf.
Robiliśmy także wezwania do zapłaty z naliczaniem odsetek. Działa to tak, że dla wybranego klienta z zadłużeniem generowany jest dokument w LMS. W dokumencie tym wskazywane są faktury które obejmuje zadłużenie wraz z policzonymi odsetkami na chwilę wygenerowania dokumentu.
Ogólnie można powiedzieć, że naliczanie odsetek w LMS nie jest taka prostą sprawą.
W dniu 2 listopada 2012 10:27 użytkownik Michał Szczygłowski michal.szczyglowski@wp.pl napisał:
Temat umarł ? Sa jakieś postępy z modułem ? Michał
-----Oryginalna wiadomość----- From: A.L.E.C Sent: Friday, June 15, 2012 8:08 PM To: lms@lists.lms.org.pl Subject: Re: [lms] Moduł odsetek do LMS
On 06/09/2012 09:26 AM, Krzysztof Drewicz wrote:
propozycja (moja) jest taka aby zrobić tabelkę z zadłużeniem wynikającym z odsetek (zupełnie obok "cash"). co noc, takową tabelkę aktualizować o odsetki.
To jest kwestia dyskusyjna, być może niektórym wystarczy raz w miesiącu tuż przed fakturowaniem. Skrypt powinien to uwazględniać, chociażby dlatego, żeby uwzględnić okresy w których skrypt się nie wykonał z jakiegokolwiek powodu.
rekord w tabelce odpowiada odsetkom za każdą płatność klienta która nie była w terminie
Oczywiście skrypt i tabelka na stawki odsetek ustawowych. Chyba gdzieś miałem taki skrypt.
jest to w miarę proste, łatwe i przyjemne, ma jedną sporą i zasadniczą wadę: nie umiem w 10 minut napisać zapytania SQL które nie zabije bazy trzymającej dane 10 000 klientów za 5 lat wstecz - która wyszuka i dobrze uwzględni wpłaty - "częściowe". Przykład problemu: faktura na 200 zł (brutto) wystawiona - 1 maja, termin 10 maja, klient płaci: 12 maja 100 zł i 17 maja - drugie 100 zł
Jednym zapytaniem raczej byłoby trudno, to musi być skrypt, który przeleci wszystkie operacje dla danego klienta. Można jednak zastosować pewnie usprawnienia:
- ograniczyć wykonywanie skryptu do klientów z bilansem poniżej zera,
albo do tych którzy posiadają przynajmniej jedną fakturę nierozliczoną (i przeterminowaną). 2. Zapisywać datę ostatniego "zerowania bilansu" (w dodatkowej tabeli) i rozpoczynać kolejne wykonanie skryptu dla operacji nowszych. Przez "zerowanie bilansu" rozumiem tutaj moment w historii klienta w którym klient wychodzi na zero (lub na plus).
z rozmów z różnymi księgowymi - najlepiej będzie - pokazywać (w panelu, na wydrukach, w smsa, emailach itp) kwotę wynikającą z odsetek ustawowych na dzień wyliczenia a właściwe noty (z numeracją, jak faktury) - wystawiać dopiero PO tym jak klient zapłaci (bądź kwota tak urośnie że warto ją windykować itp). Bo z tego że komuś dopiszemy notę - nie wynika że on zapłaci, a jak ma kwotę i zapłaci - to wystawimy notę.
Można też - zbiorczo np na koniec roku, wystawiać notę dla każdego klienta i tutaj z tych grosików - zbiorą się prawdziwe złotówki. Jeśli uda mi się dobić z RW do cvs/svn/gita lmsa, to wrzucę tabelkę do bazy i trochę kodu do UI. (bo coś na kształt odsetkowacza mam).
W UI potrzeba możliwość wystawienia noty odsetkowej na naliczone odsetki (byćmoże z uruchomieniem procedury naliczającej) oraz prezentacja bilansu klienta z uwzględnieniem odsetek.
Uwaga żeby nie naliczać odsetek od odsetek (not odsetkowych).
-- Aleksander 'A.L.E.C' Machniak LAN Management System Developer [http://lms.org.pl] Roundcube Webmail Developer [http://roundcube.net]
PGP: 19359DC1 @@ GG: 2275252 @@ WWW: http://alec.pl _______________________________________________ lms mailing list lms@lists.lms.org.pl http://lists.lms.org.pl/mailman/listinfo/lms _______________________________________________ lms mailing list lms@lists.lms.org.pl http://lists.lms.org.pl/mailman/listinfo/lms