Centar za edukaciju-BiH



#1 12.07.2011 09:36
miro35 Van mreze
Clan
Registrovan od:05.01.2009
Postovi:608


Predmet:Fiskalni uređaji nazivi artikala
Za fiskalne uređaje je potrebno prilagoditi nazive artikala.Ja sam to napravio u query-ju,pa onda iz tog query-ja čitam nazive recordset-om i onda vrÅ¡im update u svoje artikle.Sve je u redu evo primjera kad mjenjam ovu crticu (') i stavljam razmak. Naz': Replace([Naz=];"'";" ") .
E kako sada da mjenjam kad su navodnici u nazivu. (").
Kako napisati ovo u query-ju?
Miro
↑  ↓

#2 12.07.2011 09:56
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,612


Predmet:Re: Fiskalni uređaji nazivi artikala
Po meni netrebas mijenjati i bazi nazive artikala.
Tamo treba da ostanu izvorni. E sad sta stvarno trebas promijeniti nije mi bas jasno niti iz kog razloga.
Ja sam t radio ovako:
1.Promjena duzine na napr 35 karaktera
Conts DuzArt=35
Dim NazivARt as string

NazivArt=Rs!NazivArtikla
IF Len(NazivArt)>DuzArt Then
NazivArt=Left(NazivArt,DuzArt-1) & "."
Endif

2.Zamjena Karaktera
Prvo mi moras reci razlog zasto se mijenjaju karakteri iz naziva.
Koji se mijenjaju i u koje mijenjas.

Ovo je iz razloga da nebi lutali.
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#3 12.07.2011 10:35
miro35 Van mreze
Clan
Registrovan od:05.01.2009
Postovi:608


Predmet:Re: Fiskalni uređaji nazivi artikala
Znači kad je u nazivu artikla npr "Cola" neće ga ispisati fiskalni uređaj javi greÅ¡ku.Kad stoji samo Cola onda račun izlazi.To je kod printera FP555Ba.Ja mislim da je i kod tremol uređaja.Ovo mi treba zato Å¡to neko ima preko 1000 artikala u bazi pa da ne traži gdje se nalaze navodnici u nazivu da mu to program automatski nađe.
Nije samo stvar u navodnicima.Proizvođač je u uputstvu stavio da u nazivu artikla ne smije stajati:
<,>,+,-,*,/,',",(,),=,%,&,!
Miro
↑  ↓

#4 12.07.2011 11:10
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,612


Predmet:Re: Fiskalni uređaji nazivi artikala
Evo.
Kako treba koristiti?
Kada podizes RS radi kreiranja xml filea te ucitas nazi artikla prije zapisa u txt file pozoves ovu proceduru.

Primjer:
Dim NaziA as string
NazivA=Rs!NazivPolje
NazivA=Naziv_Art(NazivA)
PreuzmiIzvorni kôd (Visual Basic):
  1. Function Naziv_Art(NazivASrtikla As String)
  2. Dim I As Integer
  3. Dim Pozicija As Integer
  4. Dim Duz_Art As Integer
  5.  
  6.  
  7. '-------------------------------
  8. 'Duzina teksta u nazivu artikla
  9. 'Moze se postaviti kao konstanta
  10. Duz_Art = 38
  11. '------------------------------
  12.  
  13. For I = 30 To 47
  14. Izmjena1:
  15. Pozicija = InStr(1, NazivASrtikla, Chr(I))
  16.      If Pozicija > 0 Then
  17.      NazivASrtikla = Left(NazivASrtikla, Pozicija - 1) & " " & Mid(NazivASrtikla, Pozicija + 1)
  18.      GoTo Izmjena1
  19.      End If
  20. Next I
  21.  
  22. For I = 58 To 63
  23. Izmjena2:
  24. Pozicija = InStr(1, NazivASrtikla, Chr(I))
  25.      If Pozicija > 0 Then
  26.      NazivASrtikla = Left(NazivASrtikla, Pozicija - 1) & " " & Mid(NazivASrtikla, Pozicija + 1)
  27.      GoTo Izmjena2
  28.      End If
  29. Next I
  30. If Len(NazivASrtikla) > Duz_Art Then
  31.  NazivASrtikla = Left(NazivASrtikla, Duz_Art - 1) & "."
  32. End If
  33.  
  34. Naziv_Art = NazivASrtikla
  35. End Function

Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#5 12.07.2011 11:23
miro35 Van mreze
Clan
Registrovan od:05.01.2009
Postovi:608


Predmet:Re: Fiskalni uređaji nazivi artikala
Da li je ovo samo za dužinu naziva artikla
Miro
↑  ↓

#6 12.07.2011 11:24
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,612


Predmet:Re: Fiskalni uređaji nazivi artikala
Ne to ti je za sve znakove koje si naveo i duzinu.
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#7 12.07.2011 12:28
miro35 Van mreze
Clan
Registrovan od:05.01.2009
Postovi:608


Predmet:Re: Fiskalni uređaji nazivi artikala
Ovo je moj kod za kreiranje xml-a gdje i kako da ubacim ovu tvoju funkciju mislim da je pozovem:
PreuzmiIzvorni kôd (Text):
  1. Dim rs2
  2. Dim db As Database
  3. Set Tekst = New Stream
  4. Tekst.Open
  5. Tekst.Position = 0
  6. Tekst.Charset = "UTF-8"
  7. Tekst.WriteText "<?xml version=""1.0"" encoding=""UTF-8"" standalone=""yes""?>" & vbCrLf
  8.  
  9. Tekst.WriteText "<RECEIPT>" & vbCrLf
  10. Set db = CurrentDb()
  11. Set rs2 = db.OpenRecordset("SELECT * FROM qryIspisIzdFiskal WHERE Broj='" & Me.Broj & "'", dbOpenDynaset)
  12.     Do While Not rs2.EOF
  13.  
  14.  If (rs2!DS_VALUEBroj > 0) Then
  15.  Tekst.WriteText "<" & "DATA BCR" & "=" & """" & rs2!BrArt & """" & " " & "VAT" & "=" & """" & rs2!ArtGPorez & """" & " " & "MES" & "=" & """" & rs2!MES & """" & " " & "DEP=""1"" " & " " & "DSC" & "=" & """" & rs2!NazArt & """" & " " & "PRC" & "=" & """" & rs2!PRCFiskal & """" & " " & "AMN" & "=" & """" & rs2!AMNFiskal & """" & " " & "DS_VALUE" & "=" & """" & rs2!DS_VALUEFiskal & """" & " " & "DISCOUNT=""True"" " & "/>" & vbCrLf
  16. Else
  17. Tekst.WriteText "<" & "DATA BCR" & "=" & """" & rs2!BrArt & """" & " " & "VAT" & "=" & """" & rs2!ArtGPorez & """" & " " & "MES" & "=" & """" & rs2!MES & """" & " " & "DEP=""1"" " & " " & "DSC" & "=" & """" & rs2!NazArt & """" & " " & "PRC" & "=" & """" & rs2!PRCFiskal & """" & " " & "AMN" & "=" & """" & rs2!AMNFiskal & """" & " " & "/>" & vbCrLf
  18. End If
  19.  
  20. rs2.MoveNext
  21.  
  22.     Loop
  23.    
  24.       rs2.Close
  25.      
  26.       Tekst.WriteText "<DATA PAY=""3"" " & "Amount" & "=" & """" & Me.Sveukupno & """" & " " & "/>" & vbCrLf
  27.       'Tekst.WriteText "<DATA PAY=""0"" Amount=""0""/>" & vbCrLf
  28.       'Tekst.WriteText "<DATA PAY=""2"" Amount=""0""/>" & vbCrLf
  29.       'Tekst.WriteText "<AdditionalLine Message=""Hvala na posjeti""/>" & vbCrLf
  30.       'Tekst.WriteText "<AdditionalLine Message=" & """" & DLookup("PodRac2", "tblPod") & """" & " " & "/>" & vbCrLf
  31.       'Tekst.WriteText "<AdditionalLine Message=" & """" & Me.BROIZD & """" & " " & "/>" & vbCrLf
  32.    Tekst.WriteText "</" & "RECEIPT" & ">" & vbCrLf
  33.       'Tekst.WriteText "<TremolFpServer>" & vbCrLf
  34.  
  35.    
  36.     Set db = Nothing
  37. Tekst.SaveToFile "C:\HCP\TO_FP\RCP_" & Me.Broj & "Klijent" & ".XML", adSaveCreateOverWrite
  38. 'Tekst.SaveToFile "C:\HCP\TO_FP\RCP_104500.XML", adSaveCreateOverWrite
  39.  Tekst.Close
  40.  'Call OK_Click
  41.  Set Tekst3 = New Stream
  42. Tekst3.Open
  43. Tekst3.Position = 0
  44. Tekst3.Charset = "UTF-8"
  45. Tekst3.WriteText "<?xml version=""1.0"" encoding=""UTF-8"" standalone=""yes""?>" & vbCrLf
  46.  
  47.     'Set db4 = Nothing
  48. Tekst3.SaveToFile "C:\HCP\TO_FP\CMD.OK", adSaveCreateOverWrite
  49.  Tekst3.Close
  50. DoCmd.SetWarnings False
  51.             DoCmd.RunSQL "UPDATE tblIzdatnica SET FiskalniIspis='" & "D" & "' WHERE Broj='" & Me.Broj & "'"
  52. DoCmd.SetWarnings True
  53. Me.FiskalniIspis = "D"
  54. ' Tekst.Close
  55.   'MsgBox "IzvjeÅ¡taj je uspjeÅ¡no poslan  na fiskalni ureaj!", vbExclamation, "UspjeÅ¡no poslano"
  56.   ProvjeraKlient (Me.Broj)
  57.  'DoCmd.Close

Miro
↑  ↓

#8 12.07.2011 13:27
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,612


Predmet:Re: Fiskalni uređaji nazivi artikala
Evo dio koda tvog koji trebas ispraviti.

PreuzmiIzvorni kôd (Visual Basic):
  1.  Set db = CurrentDb()
  2. Set rs2 = db.OpenRecordset("SELECT * FROM qryIspisIzdFiskal WHERE Broj='" & Me.Broj & "'", dbOpenDynaset)
  3. Do While Not rs2.EOF
  4. Dim NazivA as string
  5. NazivA=Rs2!NazArt
  6. NazivA=Naziv_Art(NazivA)
  7.  
  8.  If (rs2!DS_VALUEBroj > 0) Then
  9.  Tekst.WriteText "<" & "DATA BCR" & "=" & """" & rs2!BrArt & """" & " " & "VAT" & "=" & """" & rs2!ArtGPorez & """" & " " & "MES" & "=" & """" & rs2!MES & """" & " " & "DEP=""1"" " & " " & "DSC" & "=" & """" & NazivA & """" & " " & "PRC" & "=" & """" & rs2!PRCFiskal & """" & " " & "AMN" & "=" & """" & rs2!AMNFiskal & """" & " " & "DS_VALUE" & "=" & """" & rs2!DS_VALUEFiskal & """" & " " & "DISCOUNT=""True"" " & "/>" & vbCrLf
  10. Else
  11. Tekst.WriteText "<" & "DATA BCR" & "=" & """" & rs2!BrArt & """" & " " & "VAT" & "=" & """" & rs2!ArtGPorez & """" & " " & "MES" & "=" & """" & rs2!MES & """" & " " & "DEP=""1"" " & " " & "DSC" & "=" & """" & nazivA & """" & " " & "PRC" & "=" & """" & rs2!PRCFiskal & """" & " " & "AMN" & "=" & """" & rs2!AMNFiskal & """" & " " & "/>" & vbCrLf
  12. End If
  13.  
  14. rs2.MoveNext
  15.  
  16.     Loop

Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#9 12.07.2011 13:37
miro35 Van mreze
Clan
Registrovan od:05.01.2009
Postovi:608


Predmet:Re: Fiskalni uređaji nazivi artikala
Kad stavim na ovo mjesto onda mi blokira ovo
PreuzmiIzvorni kôd (Text):
  1. Dim NazivA as string
  2. NazivA=Rs2!NazArt
  3. NazivA=Naziv_Art(NazivA)
a kad stavim ispod ovog djela
If (rs2!DS_VALUEBroj > 0) Then
Onda mi kreira xml fajl sa praznim nazivom artikla
Miro
↑  ↓

#10 12.07.2011 13:43
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,612


Predmet:Re: Fiskalni uređaji nazivi artikala
Citat:
If (rs2!DS_VALUEBroj > 0) Then
Onda mi kreira xml fajl sa praznim nazivom artikla
Mozes ti staviti i ovdje ali onda moras isto to staviti i na else.
Ako stavis kako sam naveo onda moze samo jednom.

Citat:
Dim NazivA as string
NazivA=Rs2!NazArt
NazivA=Naziv_Art(NazivA)

Na kojem redu tacno stane ovdje i koju gresku javi?
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

Stranice (2):1,2


Sva vremena su GMT +02:00. Trenutno vrijeme: 1: 17 pm.