NieSprawdzajOsobyPrzyKontroliRachunku - kiedy jest używany?
Pojawił się nowy parametr konfiguracyjny, NieSprawdzajOsobyPrzyKontroliRachunku, o enigmatycznym opisie "Sprawdzaj tylko poprawność meldunku i rezerwacji podczas tworzenia rachunku pobytowego" - za co on odpowiada? Sam parametr co do nazwy i opisu jest bardzo podobny do SprawdzajOsobyPodczasDopisywaniaMeldunku, zakładam, że działanie ma analogiczne - tylko przy jakie operacji?
Parametr NieSprawdzajOsobyPrzyKontroliRachunku
Ten parametr ma myląca nazwę.
Ma zastosowanie przy meldunku, jak i przy meldunku grupowym, co do którego została zmieniona osoba rozliczana.
Na przykładzie:
Standardowe ustawienia (NieSprawdzajOsobyPrzyKontroliRachunku=0)
Rezerwacja zakładana na Jan Kowalski
naliczono rachunki na Jan Kowalski
Meldując zmieniono nazwisko na Jerzy Malinowski
Naliczenie rachunków będzie przeprowadzone na Jerzy Malinowski - jako, ze poprzednie były na Kowalski. Innymi słowy jest niebezpieczeństwo, ze gość zapłaci dwa razy.
NieSprawdzajOsobyPrzyKontroliRachunku =1
Rezerwacja zakładana na Jan Kowalski
naliczono rachunki na Jan Kowalski
Meldując zmieniono nazwisko na Jerzy Malinowski
Naliczenie rachunków nie będzie przeprowadzone => liczy się tylko rozliczenie pobytu/rezerwacji
Ma zastosowanie przy meldunku, jak i przy meldunku grupowym, co do którego została zmieniona osoba rozliczana.
Na przykładzie:
Standardowe ustawienia (NieSprawdzajOsobyPrzyKontroliRachunku=0)
Rezerwacja zakładana na Jan Kowalski
naliczono rachunki na Jan Kowalski
Meldując zmieniono nazwisko na Jerzy Malinowski
Naliczenie rachunków będzie przeprowadzone na Jerzy Malinowski - jako, ze poprzednie były na Kowalski. Innymi słowy jest niebezpieczeństwo, ze gość zapłaci dwa razy.
NieSprawdzajOsobyPrzyKontroliRachunku =1
Rezerwacja zakładana na Jan Kowalski
naliczono rachunki na Jan Kowalski
Meldując zmieniono nazwisko na Jerzy Malinowski
Naliczenie rachunków nie będzie przeprowadzone => liczy się tylko rozliczenie pobytu/rezerwacji
Owszem, działa w ten sposób, ALE...
1. W bazie jest już parametr SprawdzajOsobyPodczasDopisywaniaMeldunku, który działa niemal identycznie - nowy parametr jest wyłącznie jego negacją.
2. Jeśli w bazie istnieje tylko jeden z nich, to działa jak powinien, tj. dla NieSprawdzajOsobyPrzyKontroliRachunku - jak opisane powyżej, a dla SprawdzajOsobyPodczasDopisywaniaMeldunku efekt ten sam, tylko ustawienie odwrotne (0 - nie nalicza nowych rachunków, 1 - nalicza).
3. Jeśli w bazie są oba, to są sprawdzane oba:
1. założyłem meldunek na osobę X
2. naliczyłem rachunki, wystawiłem fakturę na gościa X
- obciążenia muszą być zamknięte/zablokowane, aby cała operacja miała sens
- jeśli obciążenia nie są zablokowane, edytując meldunek automatycznie je usuwamy (no bo coś, być może warunki naliczeń, zostanie zmienione)
3. zmieniłem w meldunku osobę na Y
Teraz powtarzam cykl:
a. ustawiam parametry:
- SprawdzajOsobyPodczasDopisywaniaMeldunku (który jest w Plazie od zawsze)
- NieSprawdzajOsobyPrzyKontroliRachunku (który pojawił się ostatnio)
b. restartuję Plazę
c. Naliczam rachunki otwarte (jeśli zostaną naliczone, kasuję je przed kolejnym testem)
przypadek 1.
SprawdzajOsoby... = 1
NieSprawdzaj... = 0
=> rachunki są naliczane
przypadek 2.
SprawdzajOsoby... = 0
NieSprawdzaj... = 0
=> rachunki nie są naliczane
przypadek 3.
SprawdzajOsoby... = 0
NieSprawdzaj... = 1
=> rachunki nie są naliczane
przypadek 4.
SprawdzajOsoby... = 1
NieSprawdzaj... = 1
=> rachunki nie są naliczane
... czyli logiczne zdanie p AND ~q
4. Kontrola tabel danych przywraca oba parametry. A jest najszybszym rozwiązaniem np. problemu z naliczaniem sald firm czy obłożenia przy zamykaniu doby, więc jest w użyciu.
Sugeruję, żeby nowy parametr (NieSprawdzajOsobyPrzyKontroliRachunku) wywalić, bo każdy upgrade będzie rozsypywał konfigurację.
1. W bazie jest już parametr SprawdzajOsobyPodczasDopisywaniaMeldunku, który działa niemal identycznie - nowy parametr jest wyłącznie jego negacją.
2. Jeśli w bazie istnieje tylko jeden z nich, to działa jak powinien, tj. dla NieSprawdzajOsobyPrzyKontroliRachunku - jak opisane powyżej, a dla SprawdzajOsobyPodczasDopisywaniaMeldunku efekt ten sam, tylko ustawienie odwrotne (0 - nie nalicza nowych rachunków, 1 - nalicza).
3. Jeśli w bazie są oba, to są sprawdzane oba:
1. założyłem meldunek na osobę X
2. naliczyłem rachunki, wystawiłem fakturę na gościa X
- obciążenia muszą być zamknięte/zablokowane, aby cała operacja miała sens
- jeśli obciążenia nie są zablokowane, edytując meldunek automatycznie je usuwamy (no bo coś, być może warunki naliczeń, zostanie zmienione)
3. zmieniłem w meldunku osobę na Y
Teraz powtarzam cykl:
a. ustawiam parametry:
- SprawdzajOsobyPodczasDopisywaniaMeldunku (który jest w Plazie od zawsze)
- NieSprawdzajOsobyPrzyKontroliRachunku (który pojawił się ostatnio)
b. restartuję Plazę
c. Naliczam rachunki otwarte (jeśli zostaną naliczone, kasuję je przed kolejnym testem)
przypadek 1.
SprawdzajOsoby... = 1
NieSprawdzaj... = 0
=> rachunki są naliczane
przypadek 2.
SprawdzajOsoby... = 0
NieSprawdzaj... = 0
=> rachunki nie są naliczane
przypadek 3.
SprawdzajOsoby... = 0
NieSprawdzaj... = 1
=> rachunki nie są naliczane
przypadek 4.
SprawdzajOsoby... = 1
NieSprawdzaj... = 1
=> rachunki nie są naliczane
... czyli logiczne zdanie p AND ~q
4. Kontrola tabel danych przywraca oba parametry. A jest najszybszym rozwiązaniem np. problemu z naliczaniem sald firm czy obłożenia przy zamykaniu doby, więc jest w użyciu.
Sugeruję, żeby nowy parametr (NieSprawdzajOsobyPrzyKontroliRachunku) wywalić, bo każdy upgrade będzie rozsypywał konfigurację.