artur17
Rejestracja: 2008-07-11, 13:33 Posty: 78
|
Import faktury zakupu w XML do Forte
Witam,
Mam nastepujące pytanie: Czy można zaimportować fakturę zakupową w formacie XML do Handlu Forte?
Jeżeli tak, to jak mogę zaadoptować szablon (format 3.0), aby wskazać właściwe odniesienia dla znaczników, które znajdują się w dokumencie XML.
Czy da się po prostu przypisać w szablonie zmienną XML-ową - w znacznikach?
|
Autor |
Wiadomość |
Mix-soft.pl
|
|
|
wrob
Ekspert
Rejestracja: 2008-04-18, 18:52 Posty: 5169 Pomógł: 59
|
Najszybciej to w szablonie formatu 3 odpalic maly parser w ambasicu ktory twoej tagi XML zamieni na odpowiednie {} :)
|
2009-05-11, 13:59 |
|
|
artur17
Rejestracja: 2008-07-11, 13:33 Posty: 78
|
Dziekuję za szybką odpowiedź.
Czy jako baaardzo początkujący uzytkownik amBasica mógłbym prosić o więcej wskazówek jak taki parser mógłby wyglądać?
Prośba o jakiś przykład...
Pozdrawiam
|
2009-05-12, 15:13 |
|
|
artur17
Rejestracja: 2008-07-11, 13:33 Posty: 78
|
Hmmm... Więc może jakaś wskazówka jak mógłbym zacząć? Czy mógłby mi ktoś wskazać jakimi poleceniami z języka raportów można by wykonać taką "konwesję"?
Np. w pliku źródłowym XML:
<ProductName>Produkt</ProductName>
Przekształcenie poprzez szablon na:
towar {nazwa = Produkt } itd...
|
2009-05-18, 08:19 |
|
|
wrob
Ekspert
Rejestracja: 2008-04-18, 18:52 Posty: 5169 Pomógł: 59
|
Zainteresuj sie poleceniem FIND i wyrazeniami reguralnymi - masz to opisane w helpie do jeyzka raportow....
No i jescze open/close i print do pliku
Albo z innej strony moze np uzycie bibliotek typu XMLdom i pliki XSD - ale to duzo przegryzania się przez to jak to działą
|
2009-05-18, 11:30 |
|
|
artur17
Rejestracja: 2008-07-11, 13:33 Posty: 78
|
Dziękuję za naprowadzenie. Bardzo ono mi pomogło. Udało mi się napisać mechanizm wyłapujący okreslony ciąg znaków i zmieniajacy je na odpowiedni format.
Mam jeszcze jednak jeden problem. Jak zrobić, żeby FIND potrafił przeszukać mój otwarty plik XML.
W tym momencie raport przeszukuje tekst, który mieści się pod zmienną Buf (String). Gdy przypiszę do niej "na sztywno" jakiś swój tekst, wszystko działa ok.
Jednak nie potrafię podstawić pod tą zmienną całego pliku XML, który ma byc źródłem do przeszukiwania.
Więc proszę o pomoc jak pod zmienną Buf przypisać całą treść pliku XML.
Pozdrawiam
|
2009-05-20, 11:22 |
|
|
wrob
Ekspert
Rejestracja: 2008-04-18, 18:52 Posty: 5169 Pomógł: 59
|
Chyba musisz czytac ten plik linia po linii w petli i przeszukiwac tak :(
Albo jednak XMLDOM :)
|
2009-05-20, 15:26 |
|
|
artur17
Rejestracja: 2008-07-11, 13:33 Posty: 78
|
Póki co próbuję sie w pętelkach. :)
Jednak zapytam jeszcze gdzie mogę znaleźć jakieś sensowne informacje n/t wspomnianego XMLDOM? Aby mozna się było dowiedzieć jak tego użyć w Symfonii...
|
2009-05-25, 12:59 |
|
|
wrob
Ekspert
Rejestracja: 2008-04-18, 18:52 Posty: 5169 Pomógł: 59
|
W google.com jest pelno :)
a szukaj tez opisu biblioteki msxmlX.dll gdzie X=3 i wiecej w sumie to ona do tego sluzy
|
2009-05-25, 13:44 |
|
|
artur17
Rejestracja: 2008-07-11, 13:33 Posty: 78
|
Natknąłem się na kolejny problem w pisaniu tego importu.
Otóż zaczytuję pętlą poszczególne linie z pliku XML poleceniem Input.
Po dojściu do odpowiedniej linii w pliku pętla zatrzymuje się.
Przed następną pętlą nie chcę kontynuować zaczytywania pliku od bierzącego miejsca, ale chcę zacząć od początku pliku (tak abym nie musiał znów otwierać tego samego pliku).
Jak więc mogę ustawić wskaźnik pliku na jego początek.
Poza tym mam pytanie czy da się ustawić taki warunek wyjścia z pętli Do... Loop, aby wychodził z niej po przeczytaniu całego pliku (co jak Do...Loop eof)?
|
2009-05-28, 14:50 |
|
|
wrob
Ekspert
Rejestracja: 2008-04-18, 18:52 Posty: 5169 Pomógł: 59
|
close i ponownie open np :)
a to drugie to wlasnie tak jak napisales - tylko wskazowka nie EOF a
Kod: do status= input xxxxxxx loop until status==0
|
2009-05-28, 15:17 |
|
|
artur17
Rejestracja: 2008-07-11, 13:33 Posty: 78
|
Dzięki serdeczne. to baaardzo! cenna podpowiedź.
Zastanawiam się jeszcze nad jedną rzeczą.
Do tej pory moim celem było wyeksportowanie danych XML do pliku i następne zaimportowanie ich do programu (czyli import w druch krokach).
Jednak czy nie dałoby się tego zrobić jednym razem? Tzn. czy można jakoś od razu z poziomu mojego raportu wrzucić dokument do bufora w Handlu Forte?
Jezeli tak, to proszę też o podpowiedź czym to moznaby zrobić.
|
2009-05-29, 08:20 |
|
|
wrob
Ekspert
Rejestracja: 2008-04-18, 18:52 Posty: 5169 Pomógł: 59
|
mozna - z poziomu swojego raportu musisz wywolac handel (jako COM) i korzystajac z Xfactory wystawic w nim dokument - choc nie wiem czy nie prosciej jest to napisac w VBA w handlu - zeby sie doczepilo do twojej aplikacji i sobie cos z niej pobrolo i wystawilo..
|
2009-05-29, 10:03 |
|
|
artur17
Rejestracja: 2008-07-11, 13:33 Posty: 78
|
Dziękuję... później sprawdzę te wskazówki.
Na ten czas jeszcze jedno pytanie...
Po zaimporowaniu towarów z mojego pliku - nie importują się poprawnie polskie znaki w Handlu.
Jest na to jakaś rada?
|
2009-05-29, 14:46 |
|
|
wrob
Ekspert
Rejestracja: 2008-04-18, 18:52 Posty: 5169 Pomógł: 59
|
W helpie do szablonów importu w FK winno byc polecenia Translate, TYP_KODOWANIA, TABLICACO_KODOWANIA - w FK dzialaja moze i w handlu tez zadzialaja :)
|
2009-05-30, 18:21 |
|
|