Zmiana danych firmy z osoby

Wyjaśnienia związane z działalnością Hotelu (m.in. moduły Recepcja, Housekeping, Administracja)

Moderator: jacqueline

AJP_Kuba
Ekspert
Posty: 156
Rejestracja: 2009-06-05, 07:20
Lokalizacja: Kraków
Kontakt:

Zmiana danych firmy z osoby

Post autor: AJP_Kuba »

Czy da się wyłączyć sugestię dotyczącą zmiany danych płatnika po zmianie danych osoby?

Rzecz fajna, jeśli chodzi o pierwszy dokument sprzedaży na osobę fizyczną, ale później może już tyko ściągnąć kłopoty. Sytuacja:
- przyjeżdża Kowalski, mieszka, na koniec dostaje fakturę imienną
- na fakturze okazało się, że jest pomyłka w nazwie ulicy-> otwieramy formularz osoby, poprawiamy, akceptujemy, zatwierdzamy zmianę płatnika powiązanego, drukujemy fakturę ponownie, gra
- po pewnym czasie Kowalski do nas wraca, znów życzy sobie fakturę imienną, ale przeprowadził się
- aktualizujemy dane osoby, zatwierdzamy, pojawia się komunikat o zmianę danych płatnika i...
=> jeśli zatwierdzimy, dane płatnika się zmienią. Jakie dane będzie miała teraz pierwsza faktura wystawiona na Kowalskiego? :-/
=> jeśli się nie zgodzimy, dane płatnika się nie zmienią. Górna ikona "twórz płatnika na podstawie danych osobowych" będzie nieaktywna; trzeba więc wejść na listę płatników i tam podziałać.
==> szukamy Kowalskiego - tego ze starymi danymi
==> próbujemy go skopiować: "czy na pewno powielić zaznaczoną pozycję?" - TAK; "tych danych nie można kopiować bezpośrednio, identyfikator musi być unikalny"...
==> pozostaje tylko założyć nowego płatnika, przepisując wszystkie dane od nowa
==> starego płatnika przenosimy do archiwum, żeby się nie mieć porządek w liście firm
==> wracamy do listy osób, otwieramy dane Kowalskiego, żeby zmienić jego wpis "zatrudniony w firma, płatnik"- jeśli znów się u nas pojawi, Plaza podpowie nam jego nowe dane do dokumentu sprzedaży
==> po wybraniu nowego wpisu płatnika, zatwierdzamy dane osoby; pojawia się komunikat o zmianie danych płatnika utworzonego z danych osoby. Płatnikiem tym był.... Kowalski, na którego wystawiliśmy PIERWSZĄ omawianą fakturę! Zatem od tej pory każdy, kto będzie cokolwiek sprawdzał czy zmieniał w formularzu danych Kowalskiego, musi się pilnować.

Uprawnienia użytkownika nie mają większego znaczenia - każdy, kto ma możliwość modyfikacji danych adresowych osób, może w ten sposób wpłynąć na treść dokumentów sprzedaży.
Awatar użytkownika
jevkoo
Administrator
Posty: 490
Rejestracja: 2009-05-17, 19:28
Lokalizacja: Skoczów

Post autor: jevkoo »

Rozwiązaniem jest powiązanie wzorców wydruków z ADRES_ID
W tabeli Adres mamy bieżące adresy naszych klientów (zarówno osób i firm) zatem faktura nam się wydrukuje z takim adresem jaki jest właściwy dla daty faktury.
TO oczywiście teoria, bo oprócz opisanej sytuacji jest milion innych związanych chociażby ze skanowaniem dokumentów.
Z mojego doświadczenia wynika, ze recepcjonistom jest rybka czy skanują dowód i potem prawo jazdy, gdzie dane mogą się różnić. Bezkrytycznie przyjmują dane z dokumentu i potem zupełnie automatycznie tworzą się nowe firmy lub osoby.
Jeszcze gorzej gdy dochodzi do tego współpraca z innym programem zbierającym dane osobowe.
Ale naprawdę nie znam żadnego idiotoodpornego rozwiązania poza rozumem.
AJP_Kuba
Ekspert
Posty: 156
Rejestracja: 2009-06-05, 07:20
Lokalizacja: Kraków
Kontakt:

Post autor: AJP_Kuba »

Baza dość nowa, żeby nie było podejrzeń, że rozbieżności wynikają ze starych wersji programu i faktu, że funkcje mogły dojść później.

select adres_id from faktura where adres_id is not null ==> 0
select count(*) from adres => 1
select count(*) from firma => 227
select count(*) from osoba => 527

Dane do ADRES są zapisywane, gdy użytkownik to wymusi w karcie firmy (obok pola ULICA) lub osoby (obok pola KOD POCZTOWY).
Nie bardzo mam pomysł jak sprawić, aby dany adres był wiązany z fakturą - oprócz pisania kolejnego triggera dla bazy. Wtedy nowy dokument sprzedaży mógłbym dowiązać do najnowszego adresu wybranego płatnika. Muszę niestety założyć nieomylność użytkownika, nadać mu prawa do anulacji dokumentów sprzedaży lub zmiany płatnika w (przynajmniej) zatwierdzonym dokumencie - bo przecież klient może zauważyć pomyłkę w adresie dopiero po tym, jak dokument utworzymy, a nie ma dla faktur dolnej ikony Adresy (albo wyboru innego adresu obok wyboru płatnika dokumentu).

Tworzenie nowych danych ze skanowanych dokumentów to nieco inna kwestia - o ile wiem, najpierw szuka, ewentualnie tworzy. Cóż, jeśli gość jeszcze nie ma nowego prawa jazdy (stare po zmianie adresu zameldowania jest ważne do 6.ciu miesięcy), i podaje nam raz jedne dane, raz drugie, to ciężko oczekiwać, że automat znajdzie np. jego rabaty. Podobnie ciężko oczekiwać, że raport wg firm pokaże dane ładnie zebrane, gdy jedną firmą mamy w bazie wpisaną 10 razy. Ale chyba nie zauważył pan sedna problemu: nasz stały gość się przeprowadził, jego dane gromadzimy i uzupełniamy od x.lat, a teraz nagle nie możemy ich zmienić czy uzupełnić, bo sypną się dane księgowe. Kryminał.
A przecież system do przetwarzania danych osobowych MUSI pozwalać na uzupełnienie lub poprawianie danych osobowych. A system do ewidencji sprzedaży MUSI zapewniać stałą postać dokumentów sprzedaży.
Awatar użytkownika
jevkoo
Administrator
Posty: 490
Rejestracja: 2009-05-17, 19:28
Lokalizacja: Skoczów

Post autor: jevkoo »

Tam rzeczywiście powinien być trigger.
Lub trzeba przebudować dodawanie osób. Kolejny temat do rozwiązania.
AJP_Kuba
Ekspert
Posty: 156
Rejestracja: 2009-06-05, 07:20
Lokalizacja: Kraków
Kontakt:

Post autor: AJP_Kuba »

W tym samym temacie - zgoda na "zaktualizowania danych płatnika" ma jeszcze jedną konsekwencję: przypisuje do osoby, jako płatnika domyślnego, płatnika powstałego z danych osobowych. Czyli
-> jest osoba Jan Kowalski
-> z jego danych osobowych utworzyliśmy płatnika Kowalski Jan (niech ma ID = 1234)
-> utworzyliśmy nowego płatnika, powiedzmy Firma S.A.
-> przypisaliśmy do gościa, naszego Kowalskiego, jako płatnika domyślnego Firmę S.A. (żeby sobie ułatwić życie, niech się zawsze podpowiada)
=> ....i teraz:
-> poprawiamy dane Gościa
-> czy zmienić dane płatnika: TAK
=> oprócz innych niemiłych i niedopuszczalnych konsekwencji opisanych powyżej, gość Jan Kowalski nie jest już domyślnie powiązany z płatnikiem Firma S.A., ale z płatnikiem Kowalski Jan (ten nasz o ID = 1234)
Awatar użytkownika
jevkoo
Administrator
Posty: 490
Rejestracja: 2009-05-17, 19:28
Lokalizacja: Skoczów

Post autor: jevkoo »

To akurat jest zamierzone. Poprawiając osobę poprawiamy płatnika, który powstaje z osoby indywidualnej. Stąd pytanie jest właściwe. Można oczywiście wstawić w pytania nazwę płatnika, aby nie było wątpliwości co poprawiamy.
AJP_Kuba
Ekspert
Posty: 156
Rejestracja: 2009-06-05, 07:20
Lokalizacja: Kraków
Kontakt:

Post autor: AJP_Kuba »

Że poprawiamy dane płatnika, który powstaje z osoby, to zrozumiałe. Ale że jednocześnie zmieniamy późniejsza informację (przypisanie osoba->firma), nie jest zrozumiałe; niestety nie można też wyczyścić powiązania osoba-firma, bo nie ma odpowiedniego przycisku (zdaje się, że wyszukiwanie jest prowadzone w firmach, na podstawie osoby do kontaktu). A że dopuszczamy zmianę danych starych dokumentach, jest wręcz niedopuszczalne (bo zmiany związane z zapisami ADRES nie są wprowadzone?)
ODPOWIEDZ