orjentisanih programa dolazi do "tihe" sahrane matričnih štampača.
Kome ipak nije jasno neka oštampa neki izvještaj iz, recimo, Access-a i
poredi brzinu štampanja izvještaja slične dužine iz nekog DOS programa
(recimo Clipper-a). Posto su matrični štampači jako rasprostranjeni u
poslovima vezanim za knjigovodstvo nije tek tako preći na lasere.
Problem pogotovo dolazi do izražaja kod referata koji zbog obimnosti
podataka moraju da koriste A3 papir (recimo neke liste u Osnovnim
sredstvima). Tu nije lako preći na A3 laser koji je i dalje dosta skup
a takođe i toneri za njega.
Zbog toga sam prešao na "DOS" stampanje iz Access-a ali sam naišao
na problem kod prelaska na novu stranicu (Form Feed).
Koristeći zvaničnu ESC sekvencu za prelaz na novu stranu tj. Chr(12)
nalazio sam na problem da zavisno od situacije nekada nedostaje
jedan do dva reda a nekada doda red više. Kao posljedica toga je
pogrešno štampanje višestraničnih dokumenata i pogrešan rad
Tear Off-a (izvuče stranicu više).
Printer je hardverski dobro podesen jer njegovo dugme Form Feed i Tear Off
rade normalno.
Koristim "beskonačni" papir i probao sam na LQ-1170 i LX 300 sa identicnim
rezultatima
Logiku greške nisam uspio da dokučim.
Poslije dosta muke napustio sam Chr(12) i problem riješio na sljedeći
način:
Imam primedbe na gore postovano uputstvo...
Meni se mnogo bolje pokazala kombinacija:
cImeFajla = getTmpName()
Set fs = CreateObject("Scripting.FileSystemObject")
Set fileRacun = fs.CreateTextFile(cImeFajla, True)
...
...
cRed = " << tekst koji ide na štampu >> "
fileRacun.WriteLine (cRed)
nRed = nRed + 1
...
...
fileRacun.Write (Chr(12))
fileRacun.Close
cPort = "PRN"
fs.CopyFile cImeFajla, cPort
fs.DeleteFile cImeFajla
Obratiti pažnju na razliku izmedju Write i WriteLine, tu uvek nastaje problem sa FF kodom jer WriteLine kao i gornji Print #1, dodaje na kraju linije CRLF što pravi problem sa pozicioniranjem na strani jer printer prvo predje na drugu stranu(FF) pa onda napravi još jedan(CRLF) red što poremeti pozicioniranje.
Najbolje bi bilo da FF ide NA KRAJU ZADNJEG REDA i to:
fileRacun.Write (" <<< zadnji red izveštaja >>> " & Chr(12))
i to onda radi 1000%











Re: Access Baza Znanja