سلام
من یه فاکتور تو برنامم دارم که میخوام سه بار چاپ بشه
یکی برای مشتری - یکی برای حسابداری - یکی برای نگهبان(برگه خروج)
که در بالای فاکتور نام سه تای بالایی نوشته میشه
ممنون میشم پیشنهاد بدین که چطور این سه بار چاپ رو پیاده سازی کنم.
سلام
من یه فاکتور تو برنامم دارم که میخوام سه بار چاپ بشه
یکی برای مشتری - یکی برای حسابداری - یکی برای نگهبان(برگه خروج)
که در بالای فاکتور نام سه تای بالایی نوشته میشه
ممنون میشم پیشنهاد بدین که چطور این سه بار چاپ رو پیاده سازی کنم.
سلام،
منم بی صبرانه منتظر جواب اساتید هستم.
خدا قوت
سلام
بستگی به این داره که از چه برنامه ای برای تهیه گزارش استفاده شده است؟
سلام دوست عزیز
می تونی در سزبرگ فاکتور از Formula Field استفاده کنی و در موقع چاپ به اون مقدار بدهی و بعد چاپ بگیری.
موفق باشید...
سلام دوست عزیز ،
اگه منظورتون رو درست متوجه شده باشم :
برای این کار باید از Parameter Field استفاده کنین و در زمان چاپ بهش مقدار بدین..
موفق باشید./
سلام،
یعنی چی؟
خوب وقتی یک متغیر تعریف میکنید و به ریپورت پاس میدین چطوری می تونید بگین که 3 بار و هر بار با مقدار جدید بره روی گزارش؟
مگه اینکه برای هر بار که سرجمع میشه 3 بار هر کد رو تکرار کنید و هر بار مقدار جدید رو بریزید توی گزارش! فکر نکنم اصولی باشه.
یا اینکه شما روش دیگه ای مد نظرتونه!
درسته پارامتر منطقی نبست . هر سه صفه باید در یک گزارش تولید بشه پارامتر هم مقدارش ثابته
من با formula field کار نکردم اگه توضیح بیشتری بدین ممنون میشم
سلام دوستان
در قسمت طراحي گزارش در Crystal يك Formula Field در مكان دلخواه قرار دهيد.
و در ويژوال، ابتدا در قسمت اعلان :
Imports CrystalDecisions.CrystalReports.Engine
Imports CrystalDecisions.Shared
و سپس از نمونه كد زير استفاده كنيد.
Dim objRep As New CrystalReport1
Dim flds As FormulaFieldDefinitions
Dim fld1 As FormulaFieldDefinition
flds = objRep.DataDefinition.FormulaFields
fld1 = flds(0)
fld1.Text = "'" & "نسخه مربوط به مشتري" & "'"
CrystalReportViewer1.ReportSource = objRep
CrystalReportViewer1.Refresh()
CrystalReportViewer1.PrintReport()
موفق باشيد...
به نظرتون بهتر نیست کاری کنیم که هر سه برگ قبل از چاپ در کریستال نمایش داده بشه؟ چون کاربر ممکنه چاپ نکنه
سلام
اين بستگي به نياز كاربر داره؟
بهتره از دو گزينه 'پيش نمايش چاپ' و 'چاپ' استفاده كنيد تا كاربر بسته به نياز يا اون رو نمايش بده بعد چاپ بگيره يا اينكه مستقيم چاپ بگيره.
موفق باشيد...
ایده ی خوبیه .البته همین کار را با پارامتر هم میتوان انجام داد
هر چقدر فکر میکنم نمیشه که با یک ارتباط یک به چند این کار را انجام داد. چون فقط details تکرار میشه و header , footer تکرار نمیشه !
حقه ی دیگه ای به نظرتون میرسه؟
سلام،
خوب عزیز دنبال حقه و کلک که نیستیم اگه نه خیلی کارا میشه کرد!
راه اصولی! راه اصولی!
یه راه اینه که 3 بار این فرم رو فراخوانی کنید با سه متغیر و هر بار بجای نمایش بگی چاپ کنه!
و اما راه اصولی
report.PrintToPrinter(3 ,False, 1, Integer.MaxValue)
عدد سهباعث میشود از یک پیج یا دستور پرینت 3 بار چاپ کنه
میشه در هر بار پرینت یه مقدار جدید به عنوان پارامتر ارسال کرد؟