Prikazi cijelu temu 24.07.2011 23:33
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Lokacija:Tuzla


Predmet:Re: XML i access 2003
Objasnjenje cijele procedure Zapisixml

PreuzmiIzvorni kôd (Visual Basic):
  1. Function Zapisxml()
  2. Dim Tabele(1 To 2) As String ' dimenzionisane dvije memorijske pod nazivom tabele
  3. Dim Putanja As String
  4. Dim XmlFile As String
  5. Dim Temp As String
  6.  
  7. Tabele(1) = "Zahtjev" ' ?osnovna tabela ' Upisano u memrijsku Tabele(1)  vrijednost "Zahtjev"
  8. Tabele(2) = "Parametar"  ' Pridodata tabela--Upis u drugu memorijsku
  9. Putanja = "c:\Tring\xml\" 'Putanja zapisa bez imena filea Upis u mem. putanja
  10. XmlFile = "stampatinefiskalnidokument.xml" ' Ime xml fajla Upis u mem xmlfile
  11.  
  12.  
  13. 'export u xml fajl pod nazivom sys.dll na putanji iz memorijske putanja  
  14. Application.ExportXML acExportTable, Tabele(1), Putanja & "sys.dll", , , , acUTF8, , , Tabele(2)
  15.  
  16. Close #1 'Zatvori sekvencialni fajl 1
  17. Close #2 'Zatvori file 2
  18. 'Ovo se sam stavio samo zato ako dodje do greske pa pokrenes proceduru a ne dodje do kraja onda znaju ostati otvoreni fajlovi pa procedura poslije nece da radi
  19. Inace kada se zavrsi i istestira procedura moze se i brisati.
  20.  
  21. Open Putanja & "sys.dll" For Input As 1 ' Otvori fajl pod nazivom Sys.dll kao 1 i to za citanje
  22. Open Putanja & XmlFile For Output As 2 '' Otvori fajl pod nazivom stampatinefiskalnidokument.xm kao 2 i to za cpisanje
  23. 'Znaci imas otvorena dva fajla jedan za citanje koji je predhodno napravila procedura accessa ExportXML
  24.    While Not EOF(1) 'Pocetak while petlje koja cita file 1 tj. sys.dll
  25.    Line Input #1, Temp ' cita jedan red iz fajla i zapisuje u mem. variablu koju smo dimenzionisali pod nazivom temp
  26.        If Left(Temp, 9) = "<dataroot" Then ' ovo sam prije objasnio.
  27.        'Znaci ako se u Temp u redu slijeva nalazi zapis <dataroot> tada umjesto toga upisi dole ispod
  28.        Temp = "<Zahtjev xmlns:xsi=" & Chr(34) & "http://www.w3.org/...instance" & Chr(34) _
  29.         & " xmlns:xsd=" & Chr(34) & "http://www.w3.org/...Schema" & Chr(34) & ">"
  30.         End If
  31.         If Left(Temp, 11) = "</dataroot>" Then ' ovo sam isto objasnio
  32.        Temp = "</Zahtjev>"
  33.         End If
  34.     Print #2, Temp ' zapisi vrijednost temp u file 2
  35.    Wend ' Kraj petlje
  36. Close #1 ' zatvori fajl 1
  37. Close #2 'Zatvori fajl 2
  38. End Function

kako vidis fajl 3 ne postoji i javit ce ti gresku.

Broj 1 i 2 su brojevi za otvorene fajlove
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.