Warning: Illegal string offset 'status' in /home2/icentarb/public_html/icentar/print.php on line 190

Warning: Illegal string offset 'status' in /home2/icentarb/public_html/icentar/print.php on line 190

Warning: Illegal string offset 'status' in /home2/icentarb/public_html/icentar/print.php on line 190

Warning: Illegal string offset 'status' in /home2/icentarb/public_html/icentar/print.php on line 190

Warning: Illegal string offset 'status' in /home2/icentarb/public_html/icentar/print.php on line 190

Warning: Illegal string offset 'status' in /home2/icentarb/public_html/icentar/print.php on line 190

Warning: Illegal string offset 'status' in /home2/icentarb/public_html/icentar/print.php on line 190
iCentar » Racunari i oprema » Programirannje i baze podataka » Access » Promjena printera sa forme
pmiroslav 10.06.2011 13:21
Predmet: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).

zxz 10.06.2011 13:27
Predmet: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.

pmiroslav 10.06.2011 13:43
Predmet: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:
Printeri.rar (Velicina datoteke:40.82 KB)

zxz 10.06.2011 14:38
Predmet: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.
PreuzmiIzvorni kôd (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

pmiroslav 13.06.2011 08:20
Predmet: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:

PreuzmiIzvorni kôd (vbnet):
  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:

PreuzmiIzvorni kôd (vbnet):
  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:
Printeri_2.rar (Velicina datoteke:48.65 KB)

zxz 13.06.2011 11:58
Predmet: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.

pmiroslav 13.06.2011 12:19
Predmet: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.

zxz 13.06.2011 12:26
Predmet:Re: Promjena printera sa forme

E da budem iskren to nisam ni ja gledao. Sad cu pogledati.

zxz 13.06.2011 12:33
Predmet: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.

pmiroslav 13.06.2011 12:52
Predmet: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.
Prilozi:
slika.jpg (Velicina datoteke:153.04 KB)