oscGT - dokumentacja bazy danych
Transkrypt
oscGT - dokumentacja bazy danych
oscGT – dokumentacja bazy danych Dla wersji 1.0 InsERT 2007 PoniŜszy plik zawiera dokumentację elementów bazy danych projektu oscGT (codename Thinkware), które są instalowane w bazie danych podmiotu InsERT GT. W drugiej części dokumentu znajdują się równieŜ tabele instalowane w bazie OS Commerce. Tabele w bazie InsERT GT........................................................................................................ 2 thw_ustawienia....................................................................................................................... 2 thw_ustawienia_inna_usl ....................................................................................................... 3 thw_ustawienia_magazyny .................................................................................................... 3 thw_ustawienia_osc ............................................................................................................... 4 thw_ustawienia_sposob_wystawiania_dokumentow............................................................. 4 thw_ustawienia_wysylka_usl................................................................................................. 5 thw_zmiany_*, thw_wychodzace_*, thw_sp_przygotuj_wychodzace_*.............................. 5 thw_zmiany_towar ................................................................................................................. 5 thw_wychodzace_towar ......................................................................................................... 6 thw_wychodzace_stan............................................................................................................ 6 thw_zmiany_zdjecie............................................................................................................... 6 thw_wychodzace_zdjecie....................................................................................................... 7 thw_zmiany_grafika............................................................................................................... 7 thw_wychodzace_grafika....................................................................................................... 7 thw_zmiany_stan_dokument.................................................................................................. 7 thw_wychodzace_stan_dokument.......................................................................................... 8 Tabele thw_zmiany_klient, thw_zmiany_dokument ............................................................. 8 thw_zmiany_klient ................................................................................................................. 8 thw_zmiany_dokument .......................................................................................................... 8 thw_historia_dokument.......................................................................................................... 9 thw_nieistniejące_dodane ...................................................................................................... 9 thw_potwierdzenia ............................................................................................................... 10 thw_komunikacja ................................................................................................................. 10 Tabele w bazie danych osCommerce ....................................................................................... 11 tw_temp_dodane_id ............................................................................................................. 11 tw_towar............................................................................................................................... 11 tw_zdjecie............................................................................................................................. 11 tw_producent ........................................................................................................................ 12 tw_potwierdzenia ................................................................................................................. 12 tw_autentykacja.................................................................................................................... 12 tw_ustawienia....................................................................................................................... 13 tw_synchronizowane_zamowienia....................................................................................... 13 tw_zmiany_klienci ............................................................................................................... 13 tw_zmiany_zamowienia....................................................................................................... 14 1 Tabele w bazie InsERT GT thw_ustawienia W tabeli przechowywane są główne ustawienia programu. Ma mieć 1 wiersz. Lp. Nazwa Opis 1 thw_ust_id (PK, int, not null) 2 Wersja (int, not null) wersja schematu bazy danych oscGT 3 TowarUpdMask (bigint, not null) maska bitowa, nakładana na COLUMNS_UPDATED() w wyzwalaczu na tabeli tw__Towar określająca, zmiany których kolumn tabeli tw__Towar będą śledzone 4 DokMagId (int, not null) id magazynu do wystawiania dokumentów 5 CenaUpdMask (int, not null) maska bitowa, nakładana na SUBSTRING(COLUMNS_UPDATED(), 2, 2) określająca, zmiany których kolumn tabeli tw_Cena zostaną uznane za zmiany ceny towaru 6 IloscZdjec (int, not null) ilość zdjęć, która będzie wysyłana do sklepu 7 SkalujZdjecia (bit, not null) czy zdjęcia mają być skalowane 8 MaksSzerZdjecia (int, not null) maksymalna szerokość zdjęcia w pikselach 9 MaksWysZdjecia (int, not null) maksymalna wysokość zdjęcia w pikselach 10 GenerujMiniatury (bit, not null) czy mają być generowane miniatury zdjęć 11 MaksSzerMiniatury (int, not null) maksymalna szerokość miniatury zdjęcia w pikselach 12 MaksWysMiniatury (int, not null) maksymalna wysokość miniatury zdjęcia w pikselach 13 MaksSzerGrafiki (int, not null) maksymalna szerokość grafiki producenta w pikselach 14 MaksWysGrafiki (int, not null) maksymalna wysokość grafiki producenta w pikselach 15 KhPrefiks (varchar(20), not null) prefiks symbolu kontrahenta dla klientów ze sklepu 16 KhGrupaId (int, null) id grupy kontrahentów dla klientów ze sklepu 17 UslSymbol (varchar(20), not null) prefiks symbolu usługi wysyłki ze sklepu 18 UslGrupaId (int, null) id grupy towarów dla usług wysyłki ze sklepu 19 InnaUslSymbol (varchar(20), not prefiks symbolu innej usługi ze sklepu null) 20 InnaUslGrupaId (int, null) id grupy towarów dla innych usług ze sklepu 21 NieistniejaceSymbol prefiks symbolu towarów ze sklepu (varchar(20), not null) 22 NieistniejaceGrupaId (int, null) id grupy towarów dla towarów ze sklepu 23 CzasWszystko (int, not null) nieuŜywane 24 CzasDokumenty (int, not null) czas (w minutach) pomiędzy automatycznymi synchronizacjami dokumentów (0 – tylko synch. ręczna) 25 CzasStanyDokumentow (int, not czas (w minutach) pomiędzy automatycznymi null) synchronizacjami statusów dokumentów (0 – tylko synch. ręczna) 26 CzasTowary (int, not null) czas (w minutach) pomiędzy automatycznymi synchronizacjami kartoteki towarów (0 – tylko 2 27 CzasStanyMagazynowe (int, not null) 28 CzasZdjecia (int, not null) 29 IdBanku (int, null) 30 IdWalutaKurs (int, not null) 31 TerminPlatnosci (int, not null) 32 33 ZapisujLog (bit, not null) KatalogDlaLogu (ntext, not null) synch. ręczna) czas (w minutach) pomiędzy automatycznymi synchronizacjami statusów dokumentów (0 – tylko synch. ręczna) czas (w minutach) pomiędzy automatycznymi synchronizacjami zdjęć towarów i grafik producentów (0 – tylko synch. ręczna) id banku dostarczającego tabele kursów, z którego mają być wykorzystywane tabele kursów kurs waluty, który ma być wykorzystywany (zakupu – 0, średni – 1, sprzedaŜy – 2) ilość dni wykorzystywana przy wystawianiu dokumentu z typem płatności kredyt kupiecki nieuŜywane nieuŜywane Wyzwalacz thw_tr_FK_thw_ustawienia generuje błąd T-SQL poleceniem RAISERROR('naruszenie więzów integralności', 18, 1) przy: • próbie ustawienia DokMagId na id nieistniejącego magazynu bądź NULL, • próbie ustawienia IdBanku na id nieistniejącego banku, • próbie ustawienia KhGrupaId na id nieistniejącej grupy kontrahentów, • próbie ustawienia UslGrupaId, InnaUslGrupaId, NieistniejaceGrupaId na id nieistniejącej grupy towarów Wyzwalacze thw_tr_FK_thw_ustawienia_sl_Magazyn, thw_tr_FK_thw_ustawienia_sl_GrupaKh, thw_tr_FK_thw_ustawienia_sl_WalutaBank, thw_tr_FK_thw_ustawienia_sl_GrupaTw na słownikach GT generują ten sam błąd przy próbie usuwania z nich wskazywanych wierszy. Funkcja thw_fn_poziom_cen zwraca w postaci w postaci liczby (INT) ustawiony poziom cen. thw_ustawienia_inna_usl W tabeli przechowywane jest odwzorowanie nazw w osCommerce do identyfikatorów w bazie GT „innych usług” – pozycji na zamówieniu, które nie są produktami ani usługami wysyłki. Lp. Nazwa Opis 1 nazwa (PK, varchar(255), not nazwa dodawana przez moduł podsumowania null) zamówienia w osCommerce 2 [sub_tw_Id] [int] NOT NULL id w kartotece towarów GT Więzy integralności zapewnia para wyzwalaczy thw_tr_FK_thw_ustawienia_inna_usl_tw__Towar_na_GT na tw__Towar oraz thw_tr_FK_thw_ustawienia_inna_usl_tw__Towar_na_thw na thw_ustawienia_inna_usl. thw_ustawienia_magazyny W tabeli przechowywane są idy magazynów, stany na których (suma ze wszystkich) będą wysyłane do sklepu. Lp. Nazwa Opis 1 [sub_mag_Id] [int] NOT NULL id magazynu w słowniku GT PRIMARY KEY Więzy integralności zapewnia para wyzwalaczy thw_tr_FK_thw_ustawienia_magazyny_sl_Magazyn_na_GT na sl_Magazyn oraz 3 thw_tr_FK_thw_ustawienia_magazyny_sl_Magazyn_na_thw na thw_ustawienia_magazyny. Wyzwalacz thw_tr_sl_magazyn_insert na sl_Magazyn, w przypadku, gdy w thw_ustawienia_magazyny znajdują się idy wszystkich magazynów, przy dodawaniu kolejnego magazynu do sl_Magazyn doda go równieŜ do thw_ustawienia_magazyny. thw_ustawienia_osc W tabeli przechowywana jest kopia potrzebnych ustawień oscGT po stronie sklepu. Ma mieć 1 wiersz. Lp. Nazwa Opis 1 [thw_ust_id] [int] NOT NULL PRIMARY KEY CHECK ([thw_ust_id] = 1) 2 [MaksWielkoscPaczki] [int] NOT maksymalna ilość danych (w bajtach) wysyłana NULL w jednym zapytaniu HTTP przy komunikacji ze sklepem, nie licząc nagłówka 3 [OscKodowanie] [varchar] (50) nazwa kodowania (taka, jak w nagłówkach NULL HTTP – wg nomenklatury dokumentacji .NET „WebName”) wykorzystywanego w komunikacji ze sklepem 4 [JestUltraPics] [bit] NOT NULL czy w sklepie jest zainstalowana kontrybucja Ultra Pics 5 [JestExtraFields] [bit] NOT czy w sklepie jest zainstalowana kontrybucja NULL Extra Fields thw_ustawienia_sposob_wystawiania_dokumentow W tabeli przechowywane jest odwzorowanie nazw modułów płatności w sklepie do sposobu wystawiania dokumentów w GT. Lp. Nazwa Opis 1 [metoda_platnosci] nazwa modułu płatności w osCommerce [nvarchar](255) NOT NULL PRIMARY KEY 2 [rodzaj_dokumentu] [int] NOT rodzaj dokumentu w GT: NULL • ZK z rezerwacją stanów mag. – 0 • ZK bez rezerwacji – 1 • FS ze skutkiem mag. – 2 • FS bez skutku – 3 • PAi ze skutkiem mag. – 4 • PAi bez skutku – 5 3 [sposob_platnosci] [int] NOT sposób płatności na dokumencie GT: NULL • domyślnie – 0 • gotówka – 1 • przelew – 2 • kredyt kupiecki – 3 • karta – 4 • kredyt ratalny – 5 4 [IdFormaPlatnosci] [int] NULL id w słowniku form płatności GT 5 [DrukujAutomatycznie] [bit] czy drukować dokument natychmiast po 4 NOT NULL odebraniu Więzy integralności zapewnione są przez: • ograniczenie: CHECK (([sposob_platnosci] = 4 AND [IdFormaPlatnosci] IS NOT NULL) OR ([sposob_platnosci] = 5 AND [IdFormaPlatnosci] IS NOT NULL) OR ([sposob_platnosci] <> 4 AND [sposob_platnosci] <> 5)) • parę wyzwalaczy thw_tr_FK_thw_ustawienia_sposob_wystawiania_dokumentow_sl_FormaPlatnosci_n a_thw na thw_ustawienia_sposob_wystawiania_dokumentow oraz thw_tr_FK_thw_ustawienia_sposob_wystawiania_dokumentow_sl_FormaPlatnosci_n a_GT na sl_FormaPlatnosci thw_ustawienia_wysylka_usl W tabeli przechowywane jest odwzorowanie nazw modułów wysyłki w osCommerce do pozycji w kartotece towarów i usług GT. Lp. Nazwa Opis 1 [metoda_wysylki] [varchar] (255) nazwa modułu wysyłki w osCommerce NOT NULL PRIMARY KEY 2 [sub_tw_Id] [int] NOT NULL id w kartotece towarów i usług GT Więzy integralności zapewnia para wyzwalaczy thw_tr_FK_thw_ustawienia_wysylka_usl_tw__Towar_na_GT na tw__Towar oraz thw_tr_FK_thw_ustawienia_wysylka_usl_tw__Towar_na_thw na thw_ustawienia_wysylka_usl. thw_zmiany_*, thw_wychodzace_*, thw_sp_przygotuj_wychodzace_* Tabele thw_zmiany_* przechowują zmiany na obiektach GT – to właśnie te tabele są aktualizowane przez wyzwalacze na tabelach GT. Jednemu wierszowi opowiada jeden obiekt GT. W tabelach tych przechowywane są równieŜ odwzorowania identyfikatorów obiektów w GT do identyfikatorów obiektów w sklepie. Procedury thw_sp_przygotuj_wychodzace: • przenoszą do tabel thw_wychodzace_* wiersze z thw_zmiany_*, których jeszcze tam nie ma • resetują (ustawiają w stan „brak zmian”) wiersze w thw_zmiany_* Wiersze pozostają w thw_wychodzace_* dopóki nie odbierze się ze sklepu potwierdzenia przetworzenia zmiany dotyczącej danego obiektu. thw_zmiany_towar Lp. 1 2 3 4 5 Nazwa [sub_tw_Id] [int] NOT NULL PRIMARY KEY [osc_products_id] [int] NULL [tw__Towar_colupd] [bigint] NOT NULL [pokaz] [bit] NOT NULL [ukryj] [bit] NOT NULL Opis jeŜeli NULL – zmiana „dodaj” maska bitowa, określająca które kolumny w tw__Towar zostały zaktualizowane (0 – Ŝadne) czy pokazywać towar czy ukryć towar (zaktualizować tylko pole 5 „widoczne”, mimo, Ŝe inne teŜ zostały zaktualizowane) 6 [usun] [bit] NOT NULL czy usunąć towar 7 [cena] [bit] NOT NULL czy zaktualizować cenę towaru 8 [stan] [bit] NOT NULL czy zaktualizować stan magazynowy towaru Tabelę ta aktualizowana jest przez wyzwalacze: • thw_tr_adr_ewid_update na adr__Ewid (nazwa producenta) • thw_tr_cena_update na tw_Cena • thw_tr_kontrahent_update na kh__Kontrahent (WWW producenta) • thw_tr_promocja na dok_Promocja • thw_tr_promocja_towar na dok_PromocjaTowar • thw_tr_sl_grupatw_update na sl_GrupaTw • thw_tr_stan_update na tw_Stan • thw_tr_towar_delete, thw_tr_towar_insert, thw_tr_towar_update na tw__Towar • thw_tr_tw_parametr_update na tw_Parametr (poziom cen) Procedura thw_sp_promocja słuŜy do ustalenia stawki i daty wygaśnięcia promocji na dany towar. thw_wychodzace_towar Lp. 1 2 3 4 5 Nazwa [sub_tw_Id] [int] NOT NULL PRIMARY KEY [osc_products_id] [int] NULL [usun] [bit] NOT NULL [cena] [bit] NOT NULL [ukryj] [bit] NOT NULL Opis jeŜeli NULL – zmiana „dodaj” czy usunąć towar czy zaktualizować cenę towaru czy ukryć towar (zaktualizować tylko pole „widoczne”, mimo, Ŝe inne teŜ zostały zaktualizowane) 6 [tw__Towar_colupd] [bigint] maska bitowa, określająca które kolumny w NOT NULL tw__Towar zostały zaktualizowane Procedura thw_sp_potwierdz_zmiane_towaru przetwarza (usuwa z thw_wychodzace_towar) odebrane ze sklepu potwierdzenie zmiany na towarze. Procedura thw_sp_usun_osierocone_zmiany usuwa z thw_wychodzace_towar oczekujące na potwierdzenie zmiany towarów, które zostały usunięte. thw_wychodzace_stan Wychodzące zmiany stanów magazynowych. Przy synchronizacji stanów magazynowych, do śledzenia zmian wykorzystywana jest tabela thw_zmiany_towar. Lp. Nazwa Opis 1 [sub_tw_Id] [int] NOT NULL PRIMARY KEY 2 [osc_products_id] [int] NOT NULL thw_zmiany_zdjecie Lp. 1 Nazwa [sub_zd_Id] [int] NOT NULL PRIMARY KEY Opis id zdjęcia w tw_Zdjecie 6 2 3 4 5 6 [sub_tw_Id] [int] NOT NULL id towaru w tw__Towar [glowne] [bit] NOT NULL czy zdjęcie jest główne [zm_glowne] [bit] NOT NULL czy zmienił się status „główne” zdjęcia [wyslane] [bit] NOT NULL czy zdjęcie zostało wysłane [wyslana_miniatura] [bit] NOT czy miniatura zdjęcia została wysłana NULL 7 [usun] [bit] NOT NULL czy zdjęcie usunięto Tabela jest aktualizowana przez wyzwalacze: • thw_tr_zdjecie_delete, thw_tr_zdjecie_insert, thw_tr_zdjecie_update na tw_Zdjecie thw_wychodzace_zdjecie Lp. 1 Nazwa Opis [sub_zd_Id] [int] NOT NULL id zdjęcia w tw_Zdjecie PRIMARY KEY 2 [sub_tw_Id] [int] NOT NULL id towaru w tw__Towar 3 [wyslane] [bit] NOT NULL czy zdjęcie zostało wysłane 4 [wyslana_miniatura] [bit] NOT czy miniatura zdjęcia została wysłana NULL 5 [glowne] [bit] NOT NULL czy zdjęcie jest główne 6 [usun] [bit] NOT NULL czy zdjęcie usunięto Procedura thw_sp_potwierdz_zmiane_zdjecia przetwarza (usuwa z thw_wychodzace_zdjecie) odebrane ze sklepu potwierdzenie zmiany na zdjęciu. thw_zmiany_grafika Lp. 1 Nazwa [sub_kh_Id] [int] NOT NULL Opis id kontrahenta z kh__Kontrahent będącego, którego „zdjęcia” – „grafiki producenta” – dotyczy zmiana 2 [wyslana] [bit] NOT NULL czy grafika została wysłana 3 [usun] [bit] NOT NULL czy grafika została usunięta Tabela jest aktualizowana przez wyzwalacze: • thw_tr_kontrahent_update na kh__Kontrahent thw_wychodzace_grafika Lp. 1 Nazwa [sub_kh_Id] [int] NOT NULL 2 [usun] [bit] NOT NULL Opis id kontrahenta z kh__Kontrahent będącego, którego „zdjęcia” – „grafiki producenta” – dotyczy zmiana czy grafika została usunięta thw_zmiany_stan_dokument Tabela przechowująca zmiany statusów dokumentów do wysłania do sklepu podczas synchronizacji statusów dokumentów. Statusy dokumentów w SGT są przenoszone do statusów zamówień w oscommerce w następujący sposób: • Przy złoŜeniu zamówienia w sklepie jego stan ustawiany jest na domyślny stan z ustawień oscommerce, • Podczas synchronizacji dokumentów, gdy moduł oscGT po stronie sklepu otrzyma potwierdzenie zapisania dokumentu w bazie SGT, jego status ustawiany jest na status 7 o identyfikatorze 2 w bazie sklepu (tabela orders_status w bazie sklepu) – ale tylko w przypadku, gdy zapisany dokument nie wywołał skutku magazynowego (skutek lub rezerwacja stanu magazynowego) • W momencie gdy dokument w bazie SGT zmienia status na taki, który wiąŜe się z wywołaniem skutku magazynowego lub rezerwacji stanu magazynowego (w szczególności moŜe być to moment dodania dokumentu do bazy SGT), status zamówienia w sklepie ustawiany jest na status posiadający identyfikator 3 w bazie sklepu Lp. Nazwa Opis 1 [osc_orders_id] [int] NOT NULL Identyfikator zamówienia ze sklepu 2 [sub_dok_Id] [int] NOT NULL Identyfikator odpowiadającego mu dokumentu (z tabeli dok__Dokument) w SGT 3 [nowy_stan] [int] NOT NULL Status dokumentu do wysłania do sklepu. Dopuszczalne wartości to: Tabela jest aktualizowana przez wyzwalacze: • thw_tr_dokument_update na dok__Dokument thw_wychodzace_stan_dokument Lp. 1 2 Nazwa [osc_orders_id] [int] NOT NULL [sub_dok_Id] [int] NOT NULL 3 [nowy_stan] [int] NOT NULL Opis Identyfikator zamówienia ze sklepu Identyfikator odpowiadającego mu dokumentu (z tabeli dok__Dokument) w SGT Status dokumentu do wysłania do sklepu Tabele thw_zmiany_klient, thw_zmiany_dokument Tabele te róŜnią się od innych tabel typu thw_zmiany_*, poniewaŜ biorą one udział w synchronizacji w kierunku sklep->SGT, a nie w kierunku SGT->sklep. W związku z tym są one modyfikowane bezpośrednio przez oscGT, nie posiadają powiązanych triggerów w bazie SGT, odpowiadających tabel thw_wychodzace_* ani procedur thw_sp_przygotuj_wychodzace_*. SłuŜą one właściwie tylko jako baza mapowań identyfikatorów odpowiednich obiektów w bazach SGT i sklepu. thw_zmiany_klient Tabela przechowuje mapowania identyfikatorów klientów sklepu do identyfikatorów kontrahentów w SGT. Dane z tabeli wykorzystywane są do identyfikacji kontrahenta SGT na podstawie identyfikatora ze sklepu. Są one potrzebne w pierwszej fazie synchronizacji dokumentów, kiedy synchronizowane są dane kontrahentów, na których wystawione są synchronizowane dokumenty. Lp. Nazwa Opis 1 [osc_customers_id] [int] NOT Identyfikator klienta ze sklepu NULL 2 [sub_kh_Id] [int] NOT NULL Identyfikator odpowiadającego mu kontrahenta (z tabeli Kh__Kontrahent) w SGT thw_zmiany_dokument Tabela przechowuje mapowania identyfikatorów zamówień ze sklepu do identyfikatorów odpowiadających im dokumentów w SGT (tzn. dokumentów wystawionych na podstawie tych zamówień). Mapowania te są wykorzystywane przy aktualizowaniu statusów 8 dokumentów w sklepie podczas synchronizacji statusów dokumentów, przy zmianie statusów w SGT (patrz tabela thw_zmiany_stan_dokument). Lp. Nazwa Opis 1 [osc_orders_id] [int] NOT NULL Identyfikator zamówienia ze sklepu 2 [sub_dok_Id] [int] NOT NULL Identyfikator odpowiadającego mu dokumentu (z tabeli dok__Dokument) w SGT thw_historia_dokument Tabela przechowuje historię dodanych przez oscGT w procesie synchronizacji dokumentów. Jest to swoisty raport z zapisywania dokumentów do bazy SGT. Raport ten związany jest z widokiem historii dodanych dokumentów w oscGT (Historia -> Dokumenty i klienci -> zakładki Dodane zamówienia i Dodane faktury i paragony), a tabela jest czyszczona wraz z wybraniem opcji wyczyść historię odebranych dokumentów w oscGT. Lp. Nazwa Opis 1 [sub_dok_Id] [int] NOT NULL Identyfikator dodanego przez oscGT dokumentu (z tabeli dok__Dokument) w bazie SGT 2 [rodzaj_dok_oryginalny] [int] Oryginalny rodzaj dokumentu (ustawiony dla NOT NULL danego rodzaju zapłaty w ustawieniach oscGT). Typ dokumentu zapisanego w bazie SGT moŜe róŜnić się od ustawionego w ustawieniach oscGT – np. gdy zamówienie ze sklepu jest w walucie obcej, a zaŜądany rodzaj dokumentu to Pai, to typ dokumentu zmieniany jest na ZK. 3 4 5 6 [waluta_symbol] [char(3)] NOT NULL [suma_zamowienia] [money] NOT NULL [data_dostarczono] [datetime] NOT NULL [data_zlozono] [datetime] NOT NULL Dopuszczalne wartości: • 0 - ZK z rezerwacją stanu • 1 - ZK bez rezerwacji stanu • 2 – FS ze skutkiem magazynowym • 3 – FS BEZ skutku magazynowego • 4 – Pai ze skutkiem mag. • 5 – Pai bez skutku mag. Waluta, która widnieje na zamówieniu w sklepie Suma zamówienia ze sklepu. MoŜe się róŜnić od sumy na dokumencie w sklepie z powodu róŜnych algorytmów zaokrąglania w oscommerce i SGT Data dodania dokumentu przez oscGT do bazy SGT Data złoŜenia zamówienia w sklepie thw_nieistniejące_dodane Tabela zawierająca dodane przy procesie synchronizacji dokumentów towary oraz usługi. UŜywana jest w widoku historii programu oscGT (Historia -> Dokumenty i klienci -> zakładki Dodane towary, Dodane usługi wysyłki i Dodane inne usługi). Podczas synchronizacji dokumentów w celu zachowania spójności danych zachodzi czasami potrzeba modyfikacji kartoteki towarów. Potrzeba ta występuje w sytuacji gdy na zamówieniu ze sklepu istnieje: 9 • • • Lp. 1 2 3 Towar, którego nie ma w bazie SGT – wtedy do bazy towarów SGT dodawany jest ‘szkielet’ towaru w celu umieszczenia go na dokumencie. Nieznana jeszcze przez oscGT usługa przesyłki (brak mapowania w tabeli thw_ustawienia_wysylka_usl) Dodatkowa usługa (np. ozdobne opakowanie), jeszcze nieznana przez oscGT (brak mapowania w tabeli thw_ustawienia_inna_usl) Nazwa Opis [tw_Id] [int] NOT NULL Identyfikator dodanego przez oscGT towaru lub usługi (tabela tw__Towar) [typ] [char(1)] NOT NULL Typ obiektu dodanego do bazy SGT. Dopuszczalne wartości: • T – towar • W – usługa wysyłki • I – inne usługi (usługi dodatkowe) [data_dostarczono] [datetime] Data dodania towaru lub usługi do bazy SGT NOT NULL thw_potwierdzenia Tabela przechowująca wychodzące (z oscGT do sklepu) potwierdzenia zmian. Lp. Nazwa Opis 1 [potwierdzenie_id] [int] IDENTITY (1, 1) NOT NULL PRIMARY KEY 2 [typ_obiektu] [varchar] (64) NOT typ obiektu, którego dotyczy potwierdzana NULL zmiana 3 [typ_zmiany] [tinyint] NOT typ potwierdzanej zmiany NULL • dodawanie – 0 • aktualizacja – 1 • usuwanie – 2 • dodawanie/aktualizacja – 3 4 [sub_id] [int] NULL identyfikator obiektu w GT 5 [osc_id] [int] NULL identyfikator obiektu w osCommerce 6 [status] [tinyint] NOT NULL status zmiany: • OK – 0 • błąd – 1 • specyficzne dla typu obiektu – >1 Procedura thw_sp_pobierz_potwierdzenia zwraca wszystkie wychodzące potwierdzenia i czyści tabelę thw_potwierdzenia. thw_komunikacja Tabela przechowująca dane wykorzystywane przy komunikacji z oscGT na serwerze sklepu. Ma mieć 1 wiersz. Lp. Nazwa Opis 1 [thw_kom_id] [int] NOT NULL PRIMARY KEY CHECK ([thw_kom_id] = 1) 2 [EpWychodzaceUrl] [varchar] adres skryptu ep0.php 10 3 4 5 6 7 8 (255) NULL [EpPrzychodzaceUrl] [varchar] (255) NULL [EpPotwierdzenUrl] [varchar] (255) NULL [EpKonfiguracjiUrl] [varchar] (255) NULL [EpInstalacjiUrl] [varchar] (255) [IloscPowtorzen] [int] NOT NULL [Timeout] [int] NOT NULL 9 10 adres skryptu ep1.php adres skryptu ep2.php adres skryptu epconfig.php adres skryptu install.php ile razy ponawiać próby połączenia czas w milisekundach, po którym połączenie zostanie zerwane, gdy nie zostaną przesłane Ŝadne dane numer ostatniej próby komunikacji klucz wykorzystywany do uwierzytelniania komunikacji nazwa uŜytkownika na serwerze WWW sklepu [licznik] [int] NOT NULL [blowfish_secret] [binary] (32) NULL 11 [http_username] [nvarchar] (255) NULL 12 [http_password] [nvarchar] (255) hasło na serwerze WWW sklepu NULL 13 [http_domain] [nvarchar] (255) domena na serwerze WWW sklepu NULL 14 [proxy_username] [nvarchar] nazwa uŜytkownika na serwerze proxy (255) NULL 15 [proxy_password] [nvarchar] hasło na serwerze proxy (255) NULL 16 [proxy_domain] [nvarchar] (255) domena na serwerze proxy Procedura thw_sp_pobierz_licznik zwraca aktualną wartość licznika i inkrementuje go. Tabele w bazie danych osCommerce tw_temp_dodane_id Tabela tymczasowa do wewnętrznego uŜytku dla modułu oscGT po stronie sklepu. Nie ma znaczenia w samym procesie wymiany danych. Lp. Nazwa Opis 1 `id` INT NOT NULL, PRIMARY KEY tw_towar Lp. 1 2 3 Nazwa `sub_id` INT NOT NULL PRIMARY KEY `osc_id` INT NOT NULL PRIMARY KEY `specials_id` INT NULL Opis id towaru w GT id towaru w osCommerce id promocji w osCommerce tw_zdjecie Lp. Nazwa Opis 11 1 2 3 4 5 6 7 `sub_zd_id` int NOT NULL PRIMARY KEY `products_id` int NOT NULL `glowne` tinyint NOT NULL `nazwa_pliku` varchar(255) NULL `nazwa_pliku_temp` varchar(255) NULL `nazwa_pliku_miniatury` varchar(255) NULL `nazwa_pliku_miniatury_temp` varchar(255) NULL id zdjęcia w GT id towaru w osCommerce czy zdjęcie jest główne nazwa pliku zdjęcia nazwa częściowego pliku zdjęcia, jeŜeli jest wysyłane w częściach nazwa pliku miniatury zdjęcia nazwa częściowego pliku miniatury zdjęcia, jeŜeli jest wysyłana w częściach tw_producent Lp. 1 2 3 4 Nazwa sub_kh_id int NOT NULL PRIMARY KEY osc_manufacturers_id int NOT NULL `nazwa_pliku` varchar(64) NULL `nazwa_pliku_temp` varchar(64) NULL Opis id kontrahenta w GT id producenta w słowniku osCommerce nazwa pliku grafiki nazwa częściowego pliku grafiki, jeŜeli jest wysyłana w częściach tw_potwierdzenia Tabela przechowująca wychodzące (ze sklepu do oscGT) potwierdzenia zmian. Lp. Nazwa Opis 1 `potwierdzenie_id` int NOT NULL auto_increment PRIMARY KEY 2 `typ_obiektu` varchar(64) NOT typ obiektu, którego dotyczy potwierdzana NULL zmiana 3 `typ_zmiany` tinyint NOT NULL typ potwierdzanej zmiany • dodawanie – 0 • aktualizacja – 1 • usuwanie – 2 • dodawanie/aktualizacja – 3 4 `sub_id` int NULL identyfikator obiektu w GT 5 `osc_id` int NULL identyfikator obiektu w osCommerce 6 `status` tinyint(4) NOT NULL status zmiany: 1. OK – 0 2. błąd – 1 3. specyficzne dla typu obiektu – >1 tw_autentykacja Tabela przechowująca dane wykorzystywane przy uwierzytelnianiu komunikacji. Lp. Nazwa Opis 1 `tw_aut_id` int(11) NOT NULL default '1' PRIMARY KEY 12 2 3 `licznik` int(11) NOT NULL `blowfish_secret` binary(32) NULL największy numer odebranej komunikacji klucz wykorzystywany do uwierzytelniania komunikacji tw_ustawienia Lp. 1 2 3 4 5 6 7 8 9 10 11 12 Nazwa `tw_ust_id` int(11) NOT NULL default '1' PRIMARY KEY `wersja` int(11) NOT NULL `TW_LANGUAGE_ID` int(11) default NULL `TW_GEOZONE_ID` int(11) default NULL `TW_KATALOG_ZDJEC` varchar(64) NOT NULL `TW_PW_EXTRA_FIELDS_IDS` varchar(64) NOT NULL `TW_OPIS_CSSCLASS` varchar(64) NOT NULL `TW_CHAR_CSSCLASS` varchar(64) NOT NULL `TW_UWAGI_CSSCLASS` varchar(64) NOT NULL `TW_KODOWANIE_TRANSPORT` varchar(64) default NULL Opis numer wersji schematu bazy danych id języka w słowniku osCommerce id strefy podatkowej w słowniku osCommerce podkatalog katalogu zdjęć osCommerce, do którego trafiają zdjęcia i grafiki z oscGT idy (oddzielane średnikiem) pól własnych w słowniku osCommerce klasa CSS opisu towaru z GT klasa CSS charakterystyki towaru z GT klasa CSS uwag do towaru z GT nazwa kodowania (taka, jak w nagłówkach HTTP – wg nomenklatury dokumentacji .NET „WebName”) wykorzystywanego w komunikacji ze sklepem `TW_STAN_DOSTARCZONO_ID` id stanu zamówienia w słowniku osCommerce int(11) NOT NULL ustawianego po wysłaniu zamówienia do GT `TW_STAN_ZREALIZOWANO_ID` id stanu zamówienia w słowniku osCommerce int(11) NOT NULL ustawianego po zrealizowaniu zamówienia w GT tw_synchronizowane_zamowienia Tabela przechowuje identyfikatory zamówień, które zostały zapisane juŜ w jako dokumenty w bazie danych SGT. Lp. Nazwa Opis 1 `id_zamowienia` int(11) NOT NULL Identyfikator zamówienia w bazie danych default '0', PRIMARY KEY sklepu tw_zmiany_klienci Tabela przechowująca zmiany w kartotece klientów sklepu. Lp. Nazwa Opis 1 `id_klienta` int(11) NOT NULL Identyfikator zamówienia w bazie danych default '0' sklepu 2 `typ_zmiany` tinyint(4) NOT NULL Typ zmiany do wysłania. Dopuszczalne default '0' wartości: • dodawanie – 0 13 • aktualizacja – 1 Usuwanie oraz aktualizacja klienta nie jest obecnie obsługiwana przez oscGT. tw_zmiany_zamowienia Tabela przechowująca zmiany w kartotece zamówień sklepu. Lp. Nazwa Opis 1 `id_zamowienia` int(11) NOT NULL Identyfikator zamówienia w bazie danych default '0' sklepu 2 `typ_zmiany` tinyint(4) NOT NULL Typ zmiany do wysłania. Dopuszczalne default '0' wartości: • dodawanie – 0 Pozostałe typy zmian listy zamówień nie są aktualnie obsługiwane przez osc GT 14