PDA

View Full Version : سوال: ثابت قراردادن اندازه محتوای گزارش با تغییر سیستم و چاپگر



Profesorjd
پنج شنبه 22 دی 1390, 23:25 عصر
با سلام
در گزارشم جداول و متونی وجود دارد که در قالب یک کاغذ A4 تعریف شده است در پرینتر خودم و مشابهش درست و فیکس چاپ میشود . ولی در بعضی از چاپگرها بهم میخورد . چکار باید بکنم که اندازه در چاپگرهای مختلف تغییر نکند ؟ ( البته نفرمایید که اندازه را کم کنم چون در چاپگرهایی که درست چاپ میکند از فیکسی در می‌آید )

Abbas Amiri
جمعه 23 دی 1390, 00:59 صبح
روال SetReportParameters را در یک ماژول کپی کنید و ودر جایی که میخواهید فرمان باز کردن گزارش را بدهید قبل از آن این روال رابا نام گزارشتان صدا بزنید .
با توجه به گزارش خود تنظیمات را تغییر دهید. مثل سایز کاغذ ، جهت ، مارجین هاو.....


Private Sub Command0_Click()
SetReportParameters "MyReport"
DoCmd.OpenReport "MyReport", acViewPreview
End Sub





Public Sub SetReportParameters(ReportName As String)
Dim rpt As Report, prt As Printer
DoCmd.OpenReport ReportName, acViewDesign
Set rpt = Reports(ReportName)
rpt.UseDefaultPrinter = True
Set prt = rpt.Printer
With prt
'Margins
.LeftMargin = 567 ' in units of twips 1"=1440twips / 10mm = 567twips
.RightMargin = 567
.TopMargin = 850
.BottomMargin = 567
.PaperSize = acPRPSA4 'acPRPSA5
.Orientation = acPRORPortrait 'acPRORLandscape
'.ColumnSpacing = 360
'.RowSpacing = 0
End With
DoCmd.Close ObjectType:=acReport, ObjectName:=ReportName, Save:=acSaveYes
End Sub

Profesorjd
جمعه 23 دی 1390, 20:16 عصر
با سلام و تشکر
آنچه که از ماژول متوجه شدم انجام تنظیمات اندازه چاپگر است . ولی منظور من این نبود . بطور مثال دو چاپگر 2055 و 2035 از سری HP در چاپ کاغذ A4 متفاوت هستند . یعنی مدل 2055 فیکس کاغذ A4 با حاشیه 10 میلی چاپ را به انجام میرساند ولی مدل 2035 حاشیه راست 15 و 20 میلی دارد و اگر از ماژول فوق استفاده کنم در این چاپگر بخشی از گزارش چاپ نمیشود !
چون در فرم گزارش از یک ریپورت و چند ساب ریپورت استفاده شده است بهم ریختگی آن گزارش را خراب میکند . بنظرم میباید حالتی مانند Scale‌ در چاپ که اندازه را فیکس میکند ( مثلاً از A3 به A4 یا بالعکس) باشد .

Abbas Amiri
جمعه 23 دی 1390, 20:53 عصر
منظورتان اینست که با استفاده از این ماژول مارجین ها تنظیم نمی شوند. بعد ازاجرای SetReportParameters "MyReport" خواهید دیدکه تمام مارجین ها مطابق تنظیمات درج شده تغییر خواهند کرد.

Profesorjd
شنبه 24 دی 1390, 00:45 صبح
با سلام
نه منظورم این نیست ! اندازه مارجین ها مشخص است البته در گزارش . مشکل این است که در یک چاپگر درست چاپ میشود و در چابگر دیگر بخشی چاپ نمیشود یا بهم میریزد . این مشکل مربوط به مقدار حاشیه‌ای است که چاپگر برای خود دارد . در حالت Scale‌ در چاپگر شما میتوانید یک متن با اندازه A4 را با اندازه A3 چاپ کنید یا بالعکس .

Profesorjd
پنج شنبه 29 دی 1390, 21:54 عصر
با سلام مجدد !
راه حلی برای این موضوع نیست ! عزیزان و اساتید راهنمایی فرمایند