Bosna i Hercegovina



#1 10.06.2011-12:21
pmiroslav Online
Clan
Registrovan/a od: 02.02.2009-10:32
Komentari: 1,370


Subject: Promjena printera sa forme
Zanima me mogučnost promjene printera sa forme tj pomoću koda.
Printam otpremnicu i želio bih da je nekad pošaljem direktno na printer, a nekad da je pretvorim u pdf i onda je pošaljem emailom.
Na kompu imam defaultni printer (Hp LaserJet P2015) i PDF printer (doPDF).
Pozdrav
↑  ↓

#2 10.06.2011-12:27
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,740


Subject: Re: Promjena printera sa forme
Ima negdje na forumu kod za pronalazenje printera koji su instalisani na compu.
Onda ostaje samo da se postavi po de4faultu odredjeni printer.
Mislim da je i to bilo.
Pokusaj naci ako ne uspijes imam negdje cio kod da ne pisem. Potrazit cu.
Pozdrav
↑  ↓

#3 10.06.2011-12:43
pmiroslav Online
Clan
Registrovan/a od: 02.02.2009-10:32
Komentari: 1,370


Subject: Re: Promjena printera sa forme
Znam da smo o nečemu sličnom več prije razgovarali i ja imamt taj primjer , ali neznam kako ga iskoristiti u konkretnom slučaju.

Prilozi:
Informacije o fajlu: rar  Printeri.rar
Preuzimanja: 62
Veličina: 40.82 KB


Pozdrav
↑  ↓

#4 10.06.2011-13:38
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,740


Subject: Re: Promjena printera sa forme
Ovu proceduru imas samo je treba malo promijeniti jer je neko mijenjao tabelu stampaci.
Evo ti nova procedura SetPrt pa je zamijeni za svoju.
DownloadIzvorni kod (Visual Basic):
  1. Function SetPrt(PrinterID As Integer) As Boolean
  2. Dim DB As Database
  3. Dim Rs As Recordset
  4. Dim SQL As String
  5. Dim NazivP As String
  6.  
  7. Set DB = CurrentDb()
  8.  
  9.  
  10. SQL = "SELECT * FROM Stampaci WHERE Devices='" & PrinterID & "'"
  11. Set Rs = DB.OpenRecordset(SQL)
  12. NazivP = Rs.Fields(1) & "," & Rs.Fields(2) & "," & Rs.Fields(3)
  13. SetPrt = (aht_apiWriteProfileString("Windows", _
  14.     "Device", NazivP) <> 0)
  15.  
  16. End Function

Poziv za stampu:
SetPrt (1)' znaci da ce stampati printer koji se nalazi u tabeli stampaci pod brojem 1
Poslije ovoga dolazi kod
Dim NazivIzvjestaja as string

NazivIzvjestaja="NekiNaziv"
DoCmd.OpenReport NazivIzvjestaja, acViewPreview
Pozdrav
↑  ↓

#5 13.06.2011-07:20
pmiroslav Online
Clan
Registrovan/a od: 02.02.2009-10:32
Komentari: 1,370


Subject: Re: Promjena printera sa forme
Nešta mi ne radi kako treba.
Prvi dio je u u redu. Kada pokrenem funkciju "UpisSt" tablica Stampaci sa ažurira i popuni popisom instaliranih printera (jedino što ih se prikaže samo 6, ako ih je više ostali se ne vide.)

Međutim ne ide mi mjenjanje printera.

Napravio sam rptStampaci i jednu formu na kojoj sam napravio Combo za izbor printera:

DownloadIzvorni kod (vb.net):
  1. SELECT Stampaci.Devices, Stampaci.Putanja, Stampaci.A, Stampaci.B
  2. FROM Stampaci
  3. ORDER BY Stampaci.Devices;

i na taj Combo AfterUpdate stavio sam slijedeće:

DownloadIzvorni kod (vb.net):
  1. Private Sub Combo1_AfterUpdate()
  2. SetPrt (Combo1.Column(0))
  3. Dim NazivIzvjestaja As String
  4. NazivIzvjestaja = "rptStampaci"
  5. DoCmd.OpenReport NazivIzvjestaja, acViewPreview
  6. End Sub

Međutim ništa se ne događa. Izvještaj mi uvjek ide na Defaultni printer.

Prilozi:
Informacije o fajlu: rar  Printeri_2.rar
Preuzimanja: 69
Veličina: 48.65 KB


Pozdrav
↑  ↓

#6 13.06.2011-10:58
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,740


Subject: Re: Promjena printera sa forme
Hehe sve si ti to dobro napravio. Jeste uvijek stampa na defaultni printer samo ste se taj defaultni printer mijenja. U stvari ovaj kod postavlja odabrani printer defaultni.
Jedino sto mozes doraditi a to je da pri izlazu iz app. ponovo vratis defaultni printer onaj koji je bio kada si usao.

Sto ih nadje samo 6 vjerovatno je sto neki imas koji ne radi odnosno nije dobro instalisan te kada dodje do njega nema specifikacije i prekine pretragu.
Moze se i ovaj dio rijesiti na drugaciji nacin ako ti bude zapelo.
Pozdrav
↑  ↓

#7 13.06.2011-11:19
pmiroslav Online
Clan
Registrovan/a od: 02.02.2009-10:32
Komentari: 1,370


Subject: Re: Promjena printera sa forme
Evo sada sam testirao i događa se slijedeće:

Kada otvorim Primjer i prvi puta odaberem printer u ComboBox-u sve bude u redu i dokument se odštampa na izabranom printeru, međutima ako nakon toga ponovno želim promjeniti printer sa Combom, printer se više ne mjenja.
Mogu ga promjeniti tek kada zatvorim i ponovno otvorim primjer.
Pozdrav
↑  ↓

#8 13.06.2011-11:26
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,740


Subject: Re: Promjena printera sa forme
E da budem iskren to nisam ni ja gledao. Sad cu pogledati.
Pozdrav
↑  ↓

#9 13.06.2011-11:33
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,740


Subject: Re: Promjena printera sa forme
Kod mene sve radi kako valja.
Nisam nista tvoje mijenjao sem sto sam pokrenuo funkciju da upise moje printere.
Bilo bi dobro da jos neko proba.
Ja ovaj kod imam na mojoj app. za tehnicki pregled i jos na nekim gdje imam pos printer i ovaj neki a4.
Hajd probaj ovako.
Kada promijenis printer podigni Printer and faxes pa pogledaj jeli odabtani printer po defaultu.
Opet odaberi ponovo pa napravi refresh da vidis jeli promijenio.
Pozdrav
↑  ↓

#10 13.06.2011-11:52
pmiroslav Online
Clan
Registrovan/a od: 02.02.2009-10:32
Komentari: 1,370


Subject: Re: Promjena printera sa forme
Ponovo sam probao i primjetio da mi se u Printer and Faxes promjeni defaultni printer, ali u Access prozoru prije printanja ostane stari i dokument se na tome prije odabranom i otprinta.
Probao sam na još dva kompjutera i isto.

Ikona prilozene slike:
slika.jpg
Tip fajla: Informacije o fajlu: jpg jpg
Preuzimanja: 80
Veličina: 153.04 KB
Veličina slike: 1270 x 858 Pixels


Pozdrav
↑  ↓

#11 13.06.2011-12:49
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,740


Subject: Re: Promjena printera sa forme
Da u pravu si.
Promijeni printer u vordu i exelu ali u cccessu ne. Pogledat cu u cemu je problem pa ti javim.
Pozdrav
↑  ↓

#12 13.06.2011-13:12
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,740


Subject: Re: Promjena printera sa forme
Interesantno sto to u access97 radi nepriosnoveno evo sad sam to primijetio.
Znaci vece verzije accessa ispade da imaju gresku jer ne vrse refresh default printera.
Pogledat cu ima li kakva naredba da to odradi.
Pozdrav
↑  ↓

#13 13.06.2011-15:09
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,740


Ocjena: Ocjena:100 Subject: Re: Promjena printera sa forme
Evo ti nova procedura setPrt.
samo nju zamijeni i trebalo bi da radi.
DownloadIzvorni kod (Visual Basic):
  1. Function SetPrt(PrinterID As Integer) As Boolean
  2. Dim DB As Database
  3. Dim Rs As Recordset
  4. Dim SQL As String
  5. Dim NazivP As String
  6. Dim prtLoop As Printer
  7.  
  8. Set DB = CurrentDb()
  9.  
  10. SQL = "SELECT * FROM Stampaci WHERE Devices='" & PrinterID & "'"
  11. Set Rs = DB.OpenRecordset(SQL)
  12. NazivP = Rs.Fields(1)
  13.  
  14. For Each prtLoop In Application.Printers
  15.     With prtLoop
  16.        If Rs.Fields(1) = .DeviceName Then
  17.        Set Printer = prtLoop
  18.        GoTo Kraj
  19.        End If
  20.     End With
  21. Next prtLoop
  22. Kraj:
  23. Rs.Close
  24. End Function

Pozdrav
↑  ↓

#14 14.06.2011-06:30
pmiroslav Online
Clan
Registrovan/a od: 02.02.2009-10:32
Komentari: 1,370


Subject: Re: Promjena printera sa forme
Sada radi odlično.
Još jednom puno hvala na pomoći.
Pozdrav
↑  ↓

Stranice (1): 1


All times are GMT +01:00. Current time: 24.09.2018-07:11.