Skip to main content

AccessTr.neT


Rapor Boyutlarını Sabitleme

Rapor Boyutlarını Sabitleme

Çözüldü #1
Merhaba arkadaşlar,
pc ye format atıldığında veya prg başka pc ye taşındığında raporların boyutları değişiyor,
bu rapor boyutlarını bir tabloya kaydetsek, bu sorunlardan kurtulabilirmiyiz?
nasıl bir kod yazmamız gerekir?
.rar Rapor.rar (Dosya Boyutu: 46,96 KB | İndirme Sayısı: 2)
Cevapla
#2
Sorunu tam anlayamadım. Ancak yapmaya çalıştığınız çalışmanın sorunu çözeceğini düşünmüyorum. Tasarlarken belirlediğiniz boyut değerleri, format sonucu veya başka bir PC'de değişmez.
Son Düzenleme: 03/11/2020, 09:32, Düzenleyen: alicimri.
Cevapla
#3
Akşam evde prg la uğraşıyorum, değişikler yapıyorum,
gönderiyorum işyerine rapor formatı değişmiş, bu rapor format olayını tasarımı açmadan sabitlemek istedim.
Cevapla
#4
aşağıda bazı yazıcı ayarları var düzenleme verilerini tablodan alabilirler ama çalışabilmesi için ya tablodaki verilerin accessin anlayacağı yapıya dönüştürülmesi yada çalışma anında if yada case gibi kontrol komutlarıyla accessin anlayacağı komutlara çevrilmesi gerekir

Visual Basic Code
Dim prt As accessobject
Set prt = Reports(RaporAdı).Report
With prt 
        .Printer = Application.Printers(YazıcıAdı)
        .Printer.TopMargin = AlanT!Üst
        .Printer.BottomMargin = YaziciAyar!Alt
        .Printer.LeftMargin = YaziciAyar!Sol
        .Printer.RightMargin = YaziciAyar!Sağ
        .Printer.PaperSize = YaziciAyar!Boyut
        .Printer.Orientation=YaziciAyar!Yataydikey
        .Printer.PaperSize = YaziciAyar!Boyut
End With


bu arada ben de @alicimri hocam gibi biliyorum raporu tasarlarken zaten yazıcı çıktısına göre ayar yapılıyor bilgisayardan bağımsız
Son Düzenleme: 03/11/2020, 11:25, Düzenleyen: berduş.
Cevapla
#5
Sayın berduş hocam,
tablodaki bilgileri bu şekilde her raporun içine alsam,
nasıl komut vermem gerek ?
Sub ayarlar()
.Printer.TopMargin = Dlookup ("Ust", "TblRaporBoyut", "RaporAdi='" & Me.Name & "'")
.Printer.BottomMargin = Dlookup ("Alt", "TblRaporBoyut", "RaporAdi='" & Me.Name & "'")
.Printer.LeftMargin = Dlookup ("sol", "TblRaporBoyut", "RaporAdi='" & Me.Name & "'")
.Printer.RightMargin = Dlookup ("sağ", "TblRaporBoyut", "RaporAdi='" & Me.Name & "'")
.Printer.PaperSize = Dlookup ("Boyut", "TblRaporBoyut", "RaporAdi='" & Me.Name & "'")
' .Printer.Orientation = YaziciAyar!Yataydikey
' .Printer.PaperSize = YaziciAyar!Boyut
' .Printer = Application.Printers(YazıcıAdı)

End Sub
Cevapla
#6
Oncelikle tablo yapiniz degismeli bence
1 - yatay ve dikey icin 2 farkli alana gerek yok, bu 2 alani birlestirip verileri oyle kaydetmelisiniz
Bu alandaki veriler accessin anlayacagi yapida olmali mesela portrait/dikey icin 1 landscape/yatay icin 2 gibi
2 - boyut icin farkli bir tablo daha olusturup buradan degerleri almalisiniz ki Access olculerin anlamini anlayabilsin
Aşağıdaki bağlantıları inceleyebilirsiniz
http://etutorials.org/Microsoft+Products...r+Options/
https://docs.microsoft.com/tr-tr/office/...tPaperSize
https://docs.microsoft.com/en-us/office/....papersize
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da