mojaSymfonia FORUM https://forum.mix-soft.pl/ |
|
Symfonia 2.0 Handel + integracja ze sklepem SpreeCommerce https://forum.mix-soft.pl/viewtopic.php?f=16&t=7398 |
Strona 1 z 1 |
Autor: | zulusnet [ 2016-08-11, 20:55 ] |
Tytuł: | Symfonia 2.0 Handel + integracja ze sklepem SpreeCommerce |
Witam Panów i Panie, Symfoniane Guru. Nasza firma w chwili obecnej posiada 2 stanowiska Handel i Magazyn w wersji najnowszej Symfonia 2.0 na Pervasive. Pod koniec sierpnia 2016 planujemy uruchomienie sklepu internetowego, oferującego produkty obcych firm (czyt. Dostawców zewnętrznych). W chwili obecnej trwają prace programistyczne nad sklepem (platforma spreeCommerce na RubyOnRails). W tym momencie stoimy przed wyzwaniem związanym z integracją sklepu wraz z Programem HiM Symfonii. Wiem, że tematów podobnych było już kilka na forum, niemniej jednak od dwóhc dni przeglądam zawartość tej "zacnej" skarbnicy wiedzy i nic konkretnego nie znalazłem. Póki co interesuje mnie jednostronna integracja pozwalająca automatyczny eksport z platformy sklepowej oraz import do bazy danych symfonii Zamówień obcych i Kontrahentów. Mój programista jest w stanie napisać odpowiedni konektor ze strony platformy sklepowej, niemniej jednak nie wiem jak to wrzucić do bazy danych. Jedyne co dowiedziałem się z postów, które udało mi się odkopać to to, że nie należy "ręcznie" wrzucać do bazy danych pervasive nowych rekordów bo, powiązania pomiędzy konkretnymi tabelami są na tyle skomplikowane, że łatwo można uszkodzić przechowywane dane. W związku z powyższym do Państwa pytanie, czy faktycznie nie ma sensu bezpośredni "wrzut" danych do bazy pervasive i faktycznie jest to zbyt ryzykowne? a) Jeżeli tak, to wiem, że istnieje konektor w formie kontrolki COM (nazywa się to moduł integracji ITG) ale nie ma do niego żadnej dokumentacji udostępnionej publicznie. Czy ktoś mógłby coś poradzić w tym temacie ? b) Jeżeli nie, to czy ktoś pomógłby w rozszyfrowaniu struktury potrzebnych tabel wraz z ich powiązaniami w celu stworzenia takiego "konektora" ? Pozdrawiam ZuLuS |
Autor: | marty123 [ 2016-08-12, 08:36 ] |
Tytuł: | Re: Symfonia 2.0 Handel + integracja ze sklepem SpreeCommerc |
Mogę ci opisać jak ja to zrealizowałem z Prestashop dla klienta. W Prestashop napisałem wtyczkę, która po każdym zamówieniu eksportuje zamówienie do pliku. W Handlu w procedurze onTimer jest uruchamianie sprawdzanie katalogu z zamówieniami, jeśli znajdzie plik, zaczytuje do bufora sprzedaży i ewentualnie dodaje kontrahenta, dodatkowo czyści katalog po imporcie. Sklep nie musi być na tym samym komputerze, bo w innym rozwiązaniu mam batcha, który okresowo ściąga zamówienia ze sklepu (ftp) do katalogu lokalnego importu. Dodatkowo proponuje w sklepie dodanie możliwości ponownego eksportu na żądanie, czasami się przydaje a w opisie importowanego dokumentu dodanie ID zamówienia ze sklepu internetowego. Rozwiązanie sprawdzone i działa automatycznie. |
Autor: | zulusnet [ 2016-08-12, 13:44 ] |
Tytuł: | Re: Symfonia 2.0 Handel + integracja ze sklepem SpreeCommerc |
Cześć dzięki za info. Pytania mam dwa do Ciebie w takim przypadku. Pytanie nr jeden, czy żeby procedura działała, to muszę fizycznie na serwerze mieć uruchomioną instancję programu Symfonia HiM ? czy wystarczy uruchomić jakiś skrypt ? Po drugie czy możesz mi udostępnić treść tej procedury, tak żeby 2 razy nie wywarzać drzwi otwartych? Z góry dzięki za informacje. Pozdrawiam Z. |
Autor: | marty123 [ 2016-08-12, 14:16 ] |
Tytuł: | Re: Symfonia 2.0 Handel + integracja ze sklepem SpreeCommerc |
Ad.1 Tak Handel musi działać, bo inaczej nie zadziała ontimer Ad.2. sama procedura to nic innego jak wykonanie raportu importu: int sub OnTimer() Run("import sklep") OnTimer = 0 endsub w samym imporcie jest kilka rzeczy sprawdzanych najpierw ale ta najważniejsza to istnienie pliku, od niej zależy dalszy import dispatch fso = "Scripting.FileSystemObject" // funkcja sprawdza czy istnieje plik // 0 - jesli nie ma pliku int sub CzyJestPlik(string sNazwaPliku) if fso.FileExists( sNazwaPliku ) then CzyJestPlik = 1 exit endif CzyJestPlik = 0 endsub Pozdrawiam Marcin |
Autor: | zulusnet [ 2016-08-12, 16:39 ] |
Tytuł: | Re: Symfonia 2.0 Handel + integracja ze sklepem SpreeCommerc |
Marcin dzięki za podpowiedzi. Dzisiaj zacząłem się bawić w pisanie skryptów (raportów), niemniej jednak staję na samym początku. Co w tym raporcie jest nie tak ? Nie działa mi sprawdzanie czy plik istnieje, tzn. funkcja FileExists z obiektu fso zwraca 0 zamiast 1. Oczywiście plik order.txt założyłem na potrzeby testów. Poza tym jeżeli to nie problem, to czy możesz mi podrzucić kod związany z importem zamówień obcych oraz dodawanie nowego kontrahenta z pliku ? Kod: dispatch fso = "Scripting.FileSystemObject" // funkcja sprawdza czy istnieje plik // 0 - jesli nie ma pliku int sub CzyJestPlik(string sNazwaPliku) if fso.FileExists(sNazwaPliku) then message using "plik istnieje" CzyJestPlik = 1 exit endif message using "brak pliku" CzyJestPlik = 0 endsub int sub importSklep() CzyJestPlik("D:\\order.txt") //kolejne elementy skryptu endsub importSklep() |
Autor: | zulusnet [ 2016-08-12, 19:14 ] |
Tytuł: | Re: Symfonia 2.0 Handel + integracja ze sklepem SpreeCommerc |
Witam ponownie, niestety edytować poprzedniego posta już nie mogę. Z trudem ale udało mi się opanować temat błędu, który wyskakiwał używając poprzedniego kodu. Przepisałem raport na nowo i teraz wszystko jest ok. W tym momencie chciałbym opanować temat Obiektu IORec, który jak rozumiem powinienem użyć do importu Zamówień obcych z pliku. Używając następującego kodu testowego, który znalazłem gdzieś na forum: Kod: IOrec iorec1 iorec1.SetField("typDk", "ZMO") iorec1.SetField("seria", "sZMO") iorec1.SetField("khkod", "Testowy test") iorec1.BeginSection("Pozycja dokumentu") iorec1.SetField("kod", "taboret") iorec1.SetField("ilosc", "2") iorec1.EndSection() long id = iorec1.importZO() iorec1.Clear() if id == 0 then error "Import dokumentu do bufora nie powiódł się" występuje błąd: Bład składni języka. 'importZO ' nie jest elementem struktury RECORD 'iorec1' Próbowałem użyć kilku innych metod tego obiektu, które znalazłem w Helpie dotyczącym AMBASICA, tj.: importzk(), importsp() i one działają, natomiast co do pożądanej importzo() niestety wywala błąd jak wyżej. |
Autor: | marty123 [ 2016-08-14, 14:30 ] |
Tytuł: | Re: Symfonia 2.0 Handel + integracja ze sklepem SpreeCommerc |
Aktualnie przebywam na urlopie, więc ciężko mi odpowiedzieć czemu nie działa importZO, sam robię to przez importSP() Co do kontrahentów, to jest to na tej samej zasadzie co dokumenty przez iorec, jedyna róznica to przy aktualizacji na końcu jest: BasKh.PutRec() a przy wstawianiu BasKh.InsRec() Pozdrawiam Marcin |
Autor: | kat [ 2016-09-08, 15:14 ] |
Tytuł: | Re: Symfonia 2.0 Handel + integracja ze sklepem SpreeCommerc |
ZuLuS, mamy coś takiego w ofercie. Nie widzę problemu aby dopisać konektor do Waszej platformy. |
Strona 1 z 1 | Strefa czasowa UTC+1godz. [letni] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |