Silnik

Silnik Modyfikacja i rozbudowa aktualnych mechanizmów tworzących silnik YetiForce jest złożona, ponieważ wymaga od programisty wiedzy w zakresie tego co było, tego co jest aktualnie oraz zmian jakie planujemy w przyszłości.

Biblioteka PearDatabase bazująca na PDO

W wersji YetiForce 2.1 ulepszyliśmy komunikacje pomiędzy bazą danych, a aplikacją aktualizując jedną z bibliotek za to odpowiedzialnych. Wersje wcześniejsze komunikowały się z bazą danych poprzez ADODB, a następnie korzystały ze sterowników MySQL. Aktualna wersja biblioteki PearDatabase komunikuje się bezpośrednio z PDO, które jest wbudowane w PHP, a więc mamy pewność, że zawsze będzie aktualne.

Debugowanie

01 error

YetiForce CRM to bardzo zaawansowany system, posiada kilkanaście tysięcy plików i setki zależności a codziennie jest tego coraz więcej. Dlatego aby móc analizować problemy w systemie, zostało stworzonych wiele mechanizmów logujących, które w zależności od potrzeb, w odpowiednim miejscu aktywujemy. Istnieją również inne metody analizowania błędów, lecz nie są one tutaj wymienione, ponieważ albo wymagają zaawansowanego poziomu programowania albo są specyficzne dla środowiska i wdrożonych funkcjonalności.

Handlery

Opis mozliwości handler-ów

Loader i autoloader plików

Autoloader jest mechanizmem, który ułatwia wczytywanie plików i klas. Został on tak zaprojektowany aby ułatwić budowanie nowych modułów, dzięki autoloaderowi nie musimy każdorazowo wczytywać tych samych plików aby działał moduł. W rzeczywistości służy on tylko do tego, aby nie wpisywać na sztywno ścieżek do określonych plików. Gdy tworzymy nazwę klasy zgodnie z zasadami poniżej, to nasz Autoloader przed utworzeniem obiektu/klasy załaduje odpowiedni pliku. Dodatkowo w systemie istnieje mechanizm zwany "Loader" czyli odpowiedzialny za ładowanie odpowiedniego pliku.

Nowy silnik komunikacji z bazą danych

System YetiForce od wersji 3.3 ma wbudowany nowy silnik komunikacji z bazą danych, który w kolejnych wersjach systemu jest rozwijany i udoskonalany.

Dzięki temu system YetiForce może komunikować się z wieloma silnikami bazy danych (DBMS) zgodnych z PDO takich jak MariaDB, MySQL, PostgreSQL, MSSQL, SQLite, Oracle i Cubrid.

Nie posiada jeszcze przepisanych wszystkich mechanizmów aby w pełni móc zainstalować system na innym silniku bazy danych.

QueryGenerator

System YetiForce od wersji 3.5 ma nowy mechanizm QueryGenerator, którym można listować dowolne dane z modułów typu entity.

Typy event-handlerów

Poniżej znajduje się lista event handlerów czyli możliwości wykonania dodatkowych akcji podczas wykonywania operacji bez konieczności modyfikacji funkcji bazowych. 

Lista dla wersji: 6.3.159