W dniu 24.02.2013 20:21, Sławomir Paszkiewicz pisze:
W dniu 1 listopada 2012 18:45 użytkownik Daniel Kulesza <d.kulesza@ig-zp.pl mailto:d.kulesza@ig-zp.pl> napisał:
skrypt wymaga php-imap Obecnie obsługuje 2 formaty plików 123 i 75 Poniżej taka krótka instrukcja. to co jest w lms.ini możesz ustawić też w UI. Konfiguracja w lms.ini [cashimport] server = twój serwer mail username = login do skrzynki pocztowej password = hasło server - namiar na serwer pocztowy. Format zgodny z opisem funkcji http://www.php.net/manual/en/function.imap-open.php Przykłady: pop3.poczta.onet.pl/pop3 <http://pop3.poczta.onet.pl/pop3> (używamy serwera pop3 o nazwie pop3.poczta.onet.pl <http://pop3.poczta.onet.pl>) pop3.poczta.onet.pl/pop3/ssl <http://pop3.poczta.onet.pl/pop3/ssl> (używamy serwera pop3 o nazwie pop3.poczta.onet.pl <http://pop3.poczta.onet.pl> przez ssl) imap.gmail.com/imap/ssl <http://imap.gmail.com/imap/ssl> (używamy serwera imap o nazwie imap.gmail.com <http://imap.gmail.com> przez ssl) W przypadku problemów z certyfikatem dla serwera imap można zastosować /novalidate-cert Np. imap.gmail.com/imap/ssl/novalidate-cert <http://imap.gmail.com/imap/ssl/novalidate-cert> Skrypt importu składa się z dwóch plików: 1. lms-cashimport.php - główny skrypt dodający wpłaty do bazy danych LMS Aby skrypt danych poprawnie funkcjonował nalezy dodać w LMS UI (Konfiguracja/Interfejs Użytkownika) phpui/import_config nazwę pliku konfiguracji parsera (w naszym przypadku cashimportcfg-123elixir.php) 2. cashimportcfg-123elixir.php - plik konfiguracyjny parsera w naszym wypadku dla formatu danych 123 Elixir Plik ten umożliwia ustawinie: use_line_hash: "TRUE" - suma kontrolna ma być wyliczana dla całych wierszy transakcji z oryginalnego pliku transakcji "FALSE" - suma kontrolna ma być wyliczana na podstawie złożenia odnalezionych pól time, value, customer name i comment w każdym wierszu zawierającym transakcję line_idx_hash: "1" - w sumie kontrolnej (niezależenie od sposobu liczenia ustalonego poprzez use_line_hash) uwzględniamy numer kolejny transakcji z paczki płatności "0" - w sumie kontrolnej nie uwzględniamy numeru kolejnego transakcji z paczki płatności Ponadto w LMS UI (Konfiguracja/Interfejs Użytkownika) możemy ustawić cashimport/autocommit. cashimport/use_seen_flag oznacza sekcję cashimport ustawienie use_seen_flag. Domyślnie ta flaga jest true (inaczej 1). U mnie żeby nie duplikowało wpisów to musiałem ustawić idx hash na 0
Czesc, Co oznaczaja te numery formatow? 123 i 75? Ja dostaje z banku plik w formacie ELIXIR i udalo mi sie importowac to recznie, tzn poprzez LMS > Finanse > Import i lapie mi wpisy z pliku. Natomiast jak odpalam skrypt (musialem go zmodyfikowac i zmienic:
if ($part->ifdisposition &&
strtoupper($part->disposition) == 'ATTACHMENT' && $part->type == 0) { na if ($part->ifdisposition && strtoupper($part->disposition) == 'ATTACHMENT' && $part->type == 3) {
bo inaczej nie lapal zalacznika, to dostaje tylko cos takiego:
Array ( [0] => stdClass Object ( [type] => 0 [encoding] => 0 [ifsubtype] => 1 [subtype] => PLAIN [ifdescription] => 0 [ifid] => 0 [ifdisposition] => 0 [ifdparameters] => 0 [ifparameters] => 1 [parameters] => Array ( [0] => stdClass Object ( [attribute] => charset [value] => us-ascii )
) ) [1] => stdClass Object ( [type] => 3 [encoding] => 3 [ifsubtype] => 1 [subtype] => OCTET-STREAM [ifdescription] => 0 [ifid] => 0 [bytes] => 344 [ifdisposition] => 1 [disposition] => attachment [ifdparameters] => 1 [dparameters] => Array ( [0] => stdClass Object ( [attribute] => filename [value] => 130219_0496.01 ) ) [ifparameters] => 1 [parameters] => Array ( [0] => stdClass Object ( [attribute] => name [value] => 130219_0496.01 ) ) )
) Getting cash import file 130219_0496.01 ... Błąd w konfiguracji. Nie znaleziono tablicy wzorców!
Czy nie jest tak, ze skoro lapie w Import reczny to w tym automatycznym tez powinno? Bede wdzieczny za pomoc ;)
Pozdrawiam, SP
Podbijam pytanie ;)