Najpierw proszę spojrzeć na plik obraz ogólny tego, co Oracle BRM rozliczenie proces:
- Zestawia łączną kwotę wpływów na saldo, które miały miejsce w ciągu ostatniego miesiąca. Może to obejmować opłaty za użytkowanie i opłaty subskrypcyjne.
- Zmienia status wszystkich pozycji rachunku powiązanych z rachunkiem z oczekujących na otwarte, aby przestały gromadzić opłaty i można było zastosować do nich płatności. Ponadto do rachunku dodawany jest termin płatności.
- Automatycznie żąda płatności z procesora kart kredytowych lub żąda płatności poprzez wysyłanie faktur.
- Automatycznie aktualizuje saldo konta klienta po zarejestrowaniu płatności w bazie danych BRM.
Jak to wszystko wygląda w praktyce?
Przed uruchomieniem rozliczania brm na produkcji konieczne jest wykonanie wszystkich niezbędnych kroków. Pierwszym krokiem jest przygotowanie kopii środowiska produkcyjnego - może to być środowisko przedprodukcyjne lub testowe. Krok ten obejmuje instalację najnowszej wersji produkcyjnej na tym środowisku oraz skopiowanie produkcyjnej bazy danych. Następnie konfiguracje środowiska muszą odzwierciedlać te produkcyjne. Oto główne konfiguracje, które należy odpowiednio ustawić:
- cm konfiguracja ($HOME/pin/sys/cm/pin.conf),
o Proszę sprawdzić, czy wpis loglevel jest ustawiony na 1
o Proszę zmienić wartość parametru agent_return na 0.
o Proszę zmienić wartość parametru simulate_agent na 1.
Te dwie ostatnie zmiany zostały wprowadzone, aby nie wymagały żadnych działań związanych z udostępnianiem podczas przebiegu rachunku.
- dm_oracle konfiguracja ($HOME/pin/sys/dm_oracle/pin.conf),
o Proszę ustawić parametr dm_bigsize na 8388608 lub wyższy.
o Proszę ustawić parametr dm_shmsize na 33554432 lub wyższy.
o Proszę ustawić dm_n_fe na 8
o Proszę ustawić dm_max_per_fe na 16
o Proszę ustawić dm_n_be na 24
o Proszę ustawić dm_trans_be_max na 22
- pin_bill_accts konfiguracja ($HOME/pin/apps/pin_billd/pin.conf),
o Proszę sprawdzić loglevel. Proszę zmienić go na odpowiednią wartość w zależności od tego, co należy sprawdzić podczas testu rachunku, 1 lub 3.
o Proszę zmienić parametr dzieci dla pin_billd i pin_mta na 5.
o Proszę zmienić parametr per_batch dla pin_billd i pin_mta na 20000.
o Proszę zmienić parametr fetch_size dla pin_billd i pin_mta na 150000.
- pin_inv_accts konfiguracja ($HOME/pin/apps/pin_inv/pin.conf),
o Proszę sprawdzić loglevel. Proszę zmienić go na odpowiednią wartość w zależności od tego, co należy sprawdzić podczas testu rachunku, 1 lub 3.
o Proszę zmienić parametr dzieci dla pin_billd i pin_mta na 5.
o Zmiana parametru per_batch dla pin_billd i pin_mta na 2000
o Proszę zmienić parametr fetch_size dla pin_billd i pin_mta na 15000.
Aby uzyskać najlepszą możliwą symulację produkcji, pin_virtual_time billrun musi być ustawiony na datę, w której zostanie wykonany rzeczywisty billrun na produkcji. Gdy to zostanie zrobione, można uruchomić billrun.
Co miesiąc uruchamiamy rozliczenia za pomocą skryptu pin_bill_day, który tworzy około 100 000 rachunków na godzinę. Skrypt ten tworzy rachunki dla kont, których data rozliczenia przypada na dowolny dzień przed północą dnia, w którym uruchamiamy rozliczenia. Co właściwie robi skrypt pin_bill_day? Uruchamia następujące narzędzia rozliczeniowe:
- pin_deferred_act: Wykonuje odroczone działania; na przykład, jeśli konto ma stać się nieaktywne, to narzędzie wykonuje zmianę statusu w zaplanowanym dniu.
- pin_bill_accts: Oblicza saldo należne dla rachunków i tworzy rachunek za saldo należne.
- pin_collect: Pobiera należne saldo dla kont korzystających z kart kredytowych i metod płatności debetowych.
- pin_refund: Wyszukuje konta z pozycjami zwrotu i dokonuje transakcji zwrotu online.
- pin_inv_accts: Tworzy fakturę dla każdego rozliczanego konta.
- pin_cycle_fees: Stosuje wpływ salda opłaty cyklicznej na konto klienta i anuluje produkty, których data anulowania wygasła.
Aby zweryfikować postęp i wydajność skryptu pin_bill_day, uruchamiamy zapytania do bazy danych, aby uzyskać informacje o tym, ile rachunków zostało wykonanych, ile pozostało do wykonania, czy są jakieś rachunki z błędami itp.
Po zakończeniu części rozliczeniowej brm i utworzeniu wszystkich rachunków rozpoczyna się fakturowanie. Po utworzeniu faktur są one eksportowane do dokumentów XML, które są następnie konwertowane do formatu PDF.
Oprócz zapytań wspomnianych wcześniej, istnieją również inne zapytania, które należy wykonać po zakończeniu fakturowania i fakturowania, aby zweryfikować dokładność danych wygenerowanych w tym procesie. Wykonujemy partię zapytań; oto niektóre z nich:
- Czy rozliczenie nie powiodło się?
proszę wybrać * from billinfo_t where billing_state = 4 and bill_info_id’Bill Unit(1)’;
-Oczekiwane wyniki: Nie znaleziono wierszy
- Czy są jakieś nieopłacone rachunki?
proszę wybrać poid_id0, first_name, last_name, a.status from account_t a, account_nameinfo_t an where
a.poid_id0=an.obj_id0 i
created_t< i
not exists (select b.account_obj_id0 from bill_t b
where end_t= and
b.account_obj_id0=a.poid_id0);
-Oczekiwane wyniki: Nie znaleziono wierszy
- Czy są jakieś rachunki bez numeru rachunku?
proszę wybrać * from bill_t where end_t= and bill_no is null;
- Oczekiwany: Nie znaleziono wierszy
Wszelkie znalezione problemy są następnie badane i naprawiane za pomocą systemu kontroli wersji, gdzie poprawki są później włączane do następnej wersji wydania.



