Radomił Ząbik 308 Napisano 9 Października 2017 Udostępnij Napisano 9 Października 2017 w [Sfera] Weryfikacja płatności klienta W ostatniej aktualizacji, rozszerzyliście blokady wystawiania dokumentów, przy niespłaconych fakturach, do WZ i ZK. W związku z powyższym, musiałbym rozszerzyć funkcjonalność systemu logistycznego, o weryfikację płatności, przed wystawieniem WZ. Czy istnieje możliwość dobicia się do jakieś metody informującej o tym, od strony klienta? Link to postu
Jarek KοIaѕa 2 Napisano 9 Października 2017 Udostępnij Napisano 9 Października 2017 w [Sfera] Weryfikacja płatności klienta Głownie doszło uprawnienie, którym można zabronić przekraczanai limitów. Dotychczas były to tylko ostrzeżenia. Weryfikacja płatności odbywa się samoistnie i na bieżąco w trakcie edycji dokumentu. Informacje o stanie ostrzeżeń i błędów są cały czas dostępne w danych. Wystarczy skorzystać z metody WypiszBledy(). Link to postu
Radomił Ząbik 308 Napisano 9 Października 2017 Autor Udostępnij Napisano 9 Października 2017 w [Sfera] Weryfikacja płatności klienta 1 minutę temu, Jarek K. napisał: Weryfikacja płatności odbywa się samoistnie i na bieżąco w trakcie edycji dokumentu. Informacje o stanie ostrzeżeń i błędów są cały czas dostępne w danych. Wystarczy skorzystać z metody WypiszBledy(). Czyli wystarczy, że otworzę dokument do edycji i użyje metody WypiszBledy(), a ta zwróci mi błędy w tym dokumencie - między innymi właśnie te limity kredytowe? Link to postu
Jarek KοIaѕa 2 Napisano 9 Października 2017 Udostępnij Napisano 9 Października 2017 w [Sfera] Weryfikacja płatności klienta Tak. To wszystko co jest sprawdzane na bieżąco. Nieliczne rzeczy są sprawdzane przed samym zapisem. Link to postu
Radomił Ząbik 308 Napisano 19 Marca 2018 Autor Udostępnij Napisano 19 Marca 2018 w [Sfera] Weryfikacja płatności klienta Jeszcze wracają do tematu, bo robię teraz element w innym miejscu systemu i potrzebowałbym obecnego salda klienta. Czy można je jakoś znaleźć w bazach lub wywołać sferycznie? Link to postu
Jarek KοIaѕa 2 Napisano 19 Marca 2018 Udostępnij Napisano 19 Marca 2018 w [Sfera] Weryfikacja płatności klienta Czy to chodzi o to samo co tutaj? Link to postu
Radomił Ząbik 308 Napisano 20 Marca 2018 Autor Udostępnij Napisano 20 Marca 2018 w [Sfera] Weryfikacja płatności klienta I tak i nie Tam chodziło mi o odpytanie jednostkowe, głównie z uwzględnieniem pełnej mechaniki NEXO, która jest zwracana w GUI podczas zapisywania dokumentów - czyli np. walidacja w moim systemie, gdy ktoś jest w konkretnym zamówieniu - to omówiliśmy w innym wątku, abym poszedł poprzez tworzenie wirtualnego dokumentu i użył metod WypiszBledy(). Teraz chce wyciągnąć dane do wszystkich obecnie realizowanych zamówień i lub naszych klientów, tak aby pokazać je działowi windykacji, aby mógł pracować na bieżąco - może raport w NEXO, może w moim systemie, więc pasowało by bardziej SQL. Planujemy też dodatkowe mechanizmy blokowania paczek na poziomie logistyki, czyli zanim zabierzemy się za tworzenie WZ. Z tego co zauważyłem, to w grę wchodzi jedynie odpytanie tablicy Rozrachunki i odpowiednie posumowanie wpisów, ale może jest inna droga? Link to postu
Radomił Ząbik 308 Napisano 21 Marca 2018 Autor Udostępnij Napisano 21 Marca 2018 w [Sfera] Weryfikacja płatności klienta Ok, rozwiązałem Sobie to zapytaniem do bazy rozrachunków. Dla moich potrzeb jest skuteczne. Obsługuje tylko i wyłącznie rozrachunki, które są powiązane z dokumentami. SELECT pd.Id, MIN(pd.NazwaSkrocona) AS Nazwa ,MIN(ISNULL(pd.LimitKredytuKupieckiego,0)) AS Limit, MIN(wpd.Symbol) AS WalutaLimitu ,MIN(ISNULL(tkwp.Kurs,1)) AS KursLimitu, MIN(ISNULL(pd.LimitKredytuKupieckiego,0)*ISNULL(tkwp.Kurs,1)) AS LimitPLN ,MIN(MaksymalnaLiczbaNiesplaconychDok) AS MaksymalnaLiczbaNiesplaconychDok ,MIN(MaksymalnyLiczbaDniSpoznien) AS MaksymalnyLiczbaDniSpoznien ,SUM(IIF(rch.TerminPlatnosci ,SUM(IIF(rch.TerminPlatnosci ,SUM(IIF(rch.Typ=1,ISNULL(rch.KwotaPozostala,0),0)) AS Sprzedaz ,SUM(IIF(rch.Typ=1,ISNULL(rch.KwotaPozostala*ISNULL(wlk.Kurs,1),0),0)) AS SprzedazPLN ,SUM(IIF(rch.TerminPlatnosci0,1,0)) AS SprzedazZalegleDokumenty ,MAX(IIF(rch.TerminPlatnosci0,DATEDIFF(DAY,rch.TerminPlatnosci,GETDATE()),0)) AS SprzedazDniSpoznienia ,SUM(IIF(rch.TerminPlatnosci ,SUM(IIF(rch.TerminPlatnosci ,SUM(IIF(rch.Typ=2,ISNULL(rch.KwotaPozostala,0),0)) AS Zakup ,SUM(IIF(rch.Typ=2,ISNULL(rch.KwotaPozostala*ISNULL(wlk.Kurs,1),0),0)) AS ZakupPLN ,SUM(IIF(rch.TerminPlatnosci0,1,0)) AS ZakupZalegleDokumenty ,MAX(IIF(rch.TerminPlatnosci0,DATEDIFF(DAY,rch.TerminPlatnosci,GETDATE()),0)) AS ZakupDniSpoznienia ,MIN(w.Symbol) AS Waluta FROM ModelDanychContainer.Podmioty AS pd LEFT JOIN ModelDanychContainer.Rozrachunki AS rch ON rch.Podmiot_Id=pd.Id LEFT JOIN ModelDanychContainer.Waluty AS w ON w.Id=rch.Waluta_Id LEFT JOIN ModelDanychContainer.Waluty AS wpd ON wpd.Id=pd.Podmiot_WalutaLimitow_Id LEFT JOIN ModelDanychContainer.Waluty AS pln ON pln.Symbol='PLN' LEFT JOIN ModelDanychContainer.TabelaKursowWalutPozycje AS tkwp ON tkwp.WalutaBazowa_Id=pln.Id AND tkwp.WalutaPrzeliczana_Id=wpd.Id INNER JOIN ModelDanychContainer.Dokumenty AS dk ON dk.Id=rch.Dokument_Id LEFT JOIN ModelDanychContainer.KursyWalutyDokumentu AS wlk ON wlk.Id=dk.Dokument_KursWalutyDokumentu_Id WHERE pd.Kontrahent=1 AND pd.NazwaSkrocona!='' AND rch.Dokument_Id!=0 AND pd.Id=100703 GROUP BY pd.Id,rch.Waluta_Id; Link to postu
Radomił Ząbik 308 Napisano 21 Marca 2018 Autor Udostępnij Napisano 21 Marca 2018 w [Sfera] Weryfikacja płatności klienta (edytowane) Drobna poprawka. Podłączenie TabelaKursowWalutPozycje powinna wyglądać tak: LEFT JOIN ModelDanychContainer.TabelaKursowWalutPozycje AS tkwp ON tkwp.WalutaBazowa_Id=pln.Id AND tkwp.WalutaPrzeliczana_Id=wpd.Id AND tkwp.Naglowek_Id=(SELECT MAX(Naglowek_Id) FROM ModelDanychContainer.TabelaKursowWalutPozycje) Zabrakło tam wskazania jednego kursu, przez co powstawało zwielokrotnienie ilości wyników i spore przekłamiania Edytowane 21 Marca 2018 przez Radomił Ząbik Link to postu
Polecane posty