raporda yazdırma sorunu

12/03/2010, 16:14

perisanoglu

herkese iyi günler kolay gelsin..

formdaki bir butondan formun bağlı olduğu ve verisini sorgudan alarak geçerli kayıt yazdıran raporu yazdırıyorum..ama rapordan her seferinde 2 adet çıktı almam gerekiyor..bunu aşağıdaki kodlarla halletmiştim.

Private Sub cmdDWood6_Click()
On Error GoTo Err_cmdDWood6_Click
If MsgBox("ARAÇ BİLGİLERİNİ FORM'A YAZDIRMAK İSTEDİĞİNİZDEN EMİN MİSİNİZ? İKİ SAYFA FORM YAZDIRILACAK...", 68, "BELGEYE YAZDIR") = 6 Then

DoCmd.OpenReport "EK-1 BELGESİ ARKA", acViewLayoud

DoCmd.PrintOut acPrintAll, , , , 2


Exit_cmdDWood6_Click:
Exit Sub

Err_cmdDWood6_Click:
MsgBox err.Description
Resume Exit_cmdDWood6_Click
End If
End Sub

office 2007 versiyonunda sorunsuz çalışıyor. Raporada zaman dolduğunda özelliğine kapat kodu girerek süre ölçer aralığınıda 1000 yaptım rapor çıktı alındıktan sonra otomatik kapanıyordu..ama office 2003 de acViewLayoud özelliği yok..kodu aynen bıraktığım zaman ropardan 1 adet formdan iki adet yazıyor..formu yazmaması lazım... bu kodu

DoCmd.OpenReport "EK-1 BELGESİ ARKA", acViewPreview

DoCmd.PrintOut acPrintAll, , , , 2

şeklinde düzenlediğim zamanda rapor baskı önizleme modunda açık kalıyor..
office 2003 e acViewLayoud özelliğini ekleyebileceğim bir referans varmı..yada formdaki yukarıda verdiğim kodda yazdırma işleminden sonra açık kalan önizleme raporu kapattırabilirmiyim???

yardımlarınız için şimdiden teşekkürler..
12/03/2010, 17:03

accessman

ben iki tane yazdıracaksam
aynı kodu ikikez yazıyorum
acViewLayoud
ne ifade ediyor bilemediğim için bir şey deyemeyeceğim
12/03/2010, 17:22

ozanakkaya

Kod:
If MsgBox("ARAÇ BİLGİLERİNİ FORM'A YAZDIRMAK İSTEDİĞİNİZDEN EMİN MİSİNİZ? İKİ SAYFA FORM YAZDIRILACAK...", 68, "BELGEYE YAZDIR") = 6 Then

strReportName = "EK-1 BELGESİ ARKA"
DoCmd.OpenReport strReportName, acViewPreview, , strCriteria
DoCmd.PrintOut acPrintAll, , , acHigh, 2
end if

üstteki kodu deneyebilir misin ?
12/03/2010, 23:56

perisanoglu

sayın sledgeap kodu denedim..rapor yine açık kalıyor..yazdırma bitince raporun kapanması lazım..biliyosun benim işler malum yoğun..yarın vakit bulabilirsem örnek hazırlayım..yardımcı olmanız daha kolay olur sanırım..
13/03/2010, 00:52

ayhan2122

Aşağıdaki kodu dener misiniz ?
Kod:
DoCmd.OpenReport "Rapor1", acViewPreview
DoCmd.PrintOut acPrintAll, , , , 2
DoCmd.Close acReport, "Rapor1"
13/03/2010, 01:37

perisanoglu

(13/03/2010, 00:52)ayhan2122 yazdı: Aşağıdaki kodu dener misiniz ?
Kod:
DoCmd.OpenReport "Rapor1", acViewPreview
DoCmd.PrintOut acPrintAll, , , , 2
DoCmd.Close acReport, "Rapor1"

çok çok teşekkür ederim sayın ayhan2122..bu kodla tam istediğim gibi çalıştı..sorumun cevabı verilmiş oldu..size nasıl teşekkür edeceğimi bilemiyorum...elleriniz det görmesin...iyi çalışmalar kolay gelsin...