برگزیده های پرشین تولز

پرینت در asp

صنم

کاربر تازه وارد
تاریخ عضویت
27 فوریه 2005
نوشته‌ها
125
لایک‌ها
0
سلام
من می خوام یه برنامه تحت وب با Asp بنویسم که چند تا اسم از کاربر بگیره و در نهایت بعد از ورود اسامی توسط کاربر این اسامی را از بانک اطلاعاتی خوانده و برای هر کدام از این اسامی یک گواهی که قالب خاصی دارد صادر کند و از آنها پرینت بگیرد . خواندن و ذخیره کردن در بانک اطلاعاتی را بلدم ولی این که چه جوری از این اطلاعات در قالب فرم خاصی پرینت بگیرم رو بلد نیستم کسی می تونه کمکم کنه ؟
 

amironline

Registered User
تاریخ عضویت
25 نوامبر 2003
نوشته‌ها
671
لایک‌ها
0
محل سکونت
Tabriz
شما ميتونين صفحه‌اي رو كه ميخواين ازش پرينت بگيرين كار كنين
بعد يه دكمه تو اون صفحه بزارين كه اگه روش كليك كني از همون صفحه پرينت ميده

اينم يه نمونه

HTML:
<input type="button" name="print" value="print" onclick="window.print()">
 

صنم

کاربر تازه وارد
تاریخ عضویت
27 فوریه 2005
نوشته‌ها
125
لایک‌ها
0
به نقل از amironline :
شما ميتونين صفحه‌اي رو كه ميخواين ازش پرينت بگيرين كار كنين
بعد يه دكمه تو اون صفحه بزارين كه اگه روش كليك كني از همون صفحه پرينت ميده

اينم يه نمونه

HTML:
<input type="button" name="print" value="print" onclick="window.print()">
من یه چیزی شبیه پرینت در vb می خوام که وقتی print می زنه اول preview بده بعد از اون پرینت بگیره
 

mehdi25

کاربر تازه وارد
تاریخ عضویت
28 اکتبر 2004
نوشته‌ها
1,318
لایک‌ها
2
محل سکونت
طهران
صنم جان منم یه مدت دنبال یه همچین چیزی بودم .
اولاً فکر نمی کنم بتونی یه چنین چیزی که می خوای ( اول Preview بده بعد Print ) پیدا کنی . من که جایی ندیدم .

خیلی که پیشرفت کردم تونستم اطلاعات داخل بانکو از طریق PDF به کاربر پرینت بدم .البته ActivX ی که از اون استفاده می کردم مجانی بود و یه نمه مشکل داشت . تبلیغ سایت خودشو بزرک وسط صفحه میزاشت .

آخر سر ، یه صفحه Word پرینت دادم .

این چیزی که امیر گفته هم خوبه خیلی ساده میتونی با اون کار کنی
 

صنم

کاربر تازه وارد
تاریخ عضویت
27 فوریه 2005
نوشته‌ها
125
لایک‌ها
0
به نقل از mehdi25 :
آخر سر ، یه صفحه Word پرینت دادم .
چه جوری اطلاعات db تون رو از بانک اطلاعاتی تون خوانده و به Word فرستادید (تحت وب)
 

mehdi25

کاربر تازه وارد
تاریخ عضویت
28 اکتبر 2004
نوشته‌ها
1,318
لایک‌ها
2
محل سکونت
طهران
خیلی ممنون .

اگه تونستی کدشو کشبری به منم بگو ...
jumping.gif


ببین برای این که بتونی یه فایل رو به صورت Word به کاربر بدی این کار ها رو باید انجام بدی :

یه صفحه ای داری که اطلاعات رو از Database استخراج میکنه و به کاربر نشون میده . حالا می خوای عین همون صفحه رو برای کاربر به صورت Word ارسال کنی .
یه لینک باید به خود صفحه بدی که در اون لینک xport=word قرار میدی . xport یه QueryString هست .
مثلا ً : یه صفحه داریم به نام Monitor.asp درون اون هم یه لینک میزایم به این ترتیب :
کد:
<a href="Monitor.asp?xport=word">Print</a>

اینو هم بزار اول صفحه :
کد:
<%
sExport = Request.QueryString("xport")
If sExport = "word" Then
	Response.ContentType = "application/vnd.ms-word"
	Response.AddHeader "Content-Disposition:", "attachment; filename=MONITOR.doc"
End If
%>
خوب حالا از تمام صفحه یه فایل Word درست میکنه و به شما میده . ولی این بدردت نمی خوره .
چون تو اون صفحه ای که به صورت Web داری و الان در IE باز شده یه سری چیزایه زیادی هست که نمی خوای اونارو کاربر پرینت کنه ، یا یه چیزایی می خوای به صفحه پرینت اضافه کنی درست مثل همون چیزی که من انجام دادم . اگه از اون صفحه ای که در بالا آدرسشو دادم یه پرینت بگیری میبینی که اسم شرکت و آدرسش و یه سری چیزایی دیگه بیشتر از اون یه که تو سایت دیدی رو در فایل پرینت میزاره .
برای این کار باید تمامی قسمت هایی که می خوای در فایل پرینت قرار داده بشه رو باید با یه شرط ساده بهش بگی مثل این :
کد:
<% If sExport <> "" Then %>Brand
<% Else %>

و همین طور چیزایی رو که می خوای وقتی که فایل به صورت Web اجرا میشه و کاربر میبینه رو تو صفحه داشته باشی باید این کار رو انجام بدی :
کد:
<% If sExport <> "word" Then %>
<!--#include file="header.asp"-->
<script type="text/javascript" src="Monitor.js"></script>
<script type="text/javascript">
<!--
var rowcolor = '#FFFFFF'; 
var rowaltcolor = '#F5F5F5'; 
var rowmovercolor = '#FFCCFF'; 
var rowselectedcolor = '#CCFFFF'; 
var roweditcolor = '#FFFF99'; 
//-->
</script>

<% End If %>
موفق باشی.
 

صنم

کاربر تازه وارد
تاریخ عضویت
27 فوریه 2005
نوشته‌ها
125
لایک‌ها
0
به نقل از mehdi25 :
خوب حالا از تمام صفحه یه فایل Word درست میکنه و به شما میده . ولی این بدردت نمی خوره .
چون تو اون صفحه ای که به صورت Web داری و الان در IE باز شده یه سری چیزایه زیادی هست که نمی خوای اونارو کاربر پرینت کنه ، یا یه چیزایی می خوای به صفحه پرینت اضافه کنی درست مثل همون چیزی که من انجام دادم . اگه از اون صفحه ای که در بالا آدرسشو دادم یه پرینت بگیری میبینی که اسم شرکت و آدرسش و یه سری چیزایی دیگه بیشتر از اون یه که تو سایت دیدی رو در فایل پرینت میزاره .
برای این کار باید تمامی قسمت هایی که می خوای در فایل پرینت قرار داده بشه رو باید با یه شرط ساده بهش بگی مثل این :
کد:
<% If sExport <> "" Then %>Brand
<% Else %>

و همین طور چیزایی رو که می خوای وقتی که فایل به صورت Web اجرا میشه و کاربر میبینه رو تو صفحه داشته باشی باید این کار رو انجام بدی :
کد:
<% If sExport <> "word" Then %>
<!--#include file="header.asp"-->
<script type="text/javascript" src="Monitor.js"></script>
<script type="text/javascript">
<!--
var rowcolor = '#FFFFFF'; 
var rowaltcolor = '#F5F5F5'; 
var rowmovercolor = '#FFCCFF'; 
var rowselectedcolor = '#CCFFFF'; 
var roweditcolor = '#FFFF99'; 
//-->
</script>

<% End If %>
موفق باشی.
این کدهای پایینی رو نفهمیدم چرا شرط رو نامساوی word می گذارید من وقتی که با دو سری کد اولی که گفتید پرینت می زنم (بدون کدهای بالا که نفهمیدم) دو تا خط اضافه و همچنین خود کلمه print را می اندازد که حالا می خوام این کلمه Print و دو تا خط اضافی رو ندازه بایدچی کار کنم
 

mehdi25

کاربر تازه وارد
تاریخ عضویت
28 اکتبر 2004
نوشته‌ها
1,318
لایک‌ها
2
محل سکونت
طهران
من که عرض کردم خدمتتون .
meeting.gif

چون تو اون صفحه ای که به صورت Web داری و الان در IE باز شده یه سری چیزایه زیادی هست که نمی خوای اونارو کاربر پرینت کنه
اما در مورد نامساوی : زیاد فرق نمی کنه این طوری دیگه مجبور نیستی هر جایی که شرط رو میزاری کلمه Export رو تایپ کنی .
ولی در مورد مشکل :
اون لینکی که در بالا دادم رو دوباره وارد شو و دوباره یه پرینت بگیر . حالا فایل پرینت شده رو باز کن و با اون چیزی که در IE به صورت وب میبینی مقایسه کن . ببین خیلی فرق میکنه . حتی یه سری قسمتهایی رو که در وب بهت نشون نمیده رو در فایل پرینت شده داره .

من اون دو قسمت پایین رو برای همین کار گذاشتم .
برای این که اون کلمه پرینت در فایل Word نباشه باید براش شرط بزاری .
این طوری :

کد:
<% If sExport = "" Then %><a href="Monitor.asp?export=word">Print</a><% End If %>

دیگه اینجا مساوی گزاشتم .

و اگر هم می خوای یه چیزی درون فایل پرینت باشه و درون صفحه وب نباشه عکس این شرط رو بزار
مثلا : If sExport <> "" Then هر چیزی که خواستی قرار بده
موفق باشی
 

صنم

کاربر تازه وارد
تاریخ عضویت
27 فوریه 2005
نوشته‌ها
125
لایک‌ها
0
شما می دونید چه جوری می تونم از کریستال ریپورت برای گزارشگیری تحت وب استفاده کنم ؟
 

mehdi25

کاربر تازه وارد
تاریخ عضویت
28 اکتبر 2004
نوشته‌ها
1,318
لایک‌ها
2
محل سکونت
طهران
اتفاقاً اینو من در سایت برنامه نویس دیدم .
ولی نمی دونم چطوری میشه این کارو کرد .


ببینم مگه مشکلت حل نشد ؟
 

صنم

کاربر تازه وارد
تاریخ عضویت
27 فوریه 2005
نوشته‌ها
125
لایک‌ها
0
به نقل از mehdi25 :
ببینم مگه مشکلت حل نشد ؟
ببینید من باید از یک بانک اطلاعاتی اسامی رو بخونم و برای هر کدوم از آنها پشت سرهم هر کدام در یک a4 جداگانه گواهی صادر کنم در ضمن گواهی هم فرمت خاصی داره حالا اصلا نمی دونم چه جوری می تونم این کارو انجام بدم
 

mehdi25

کاربر تازه وارد
تاریخ عضویت
28 اکتبر 2004
نوشته‌ها
1,318
لایک‌ها
2
محل سکونت
طهران
بیشتر توضیح بده

هر گواهی یه فرمتی داره ؟؟؟ یا اینکه مثلا 15 نوع داری که برای هر نفر یکی از آنها رو باید پرینت کنی . حالا به اطلاعاتش کاری ندارم

یه خورده بازش کن تا بتونیم درست راهنمایی کنیم
 

mehdi25

کاربر تازه وارد
تاریخ عضویت
28 اکتبر 2004
نوشته‌ها
1,318
لایک‌ها
2
محل سکونت
طهران
دقیقاً بگو می خوای جکار کنی ؟؟؟
 

mosyhey1

Registered User
تاریخ عضویت
27 جولای 2005
نوشته‌ها
225
لایک‌ها
4
با تشکر فراوان از آقای mahdi25 که این قدر اطلاعات کاربردی و مفید را با حوصله فراوان توضیح می دهند .
 

mehdi25

کاربر تازه وارد
تاریخ عضویت
28 اکتبر 2004
نوشته‌ها
1,318
لایک‌ها
2
محل سکونت
طهران
به نقل از mosyhey1 :
با تشکر فراوان از آقای mahdi25 که این قدر اطلاعات کاربردی و مفید را با حوصله فراوان توضیح می دهند .
خواهش می شود
gentleman.gif
 

صنم

کاربر تازه وارد
تاریخ عضویت
27 فوریه 2005
نوشته‌ها
125
لایک‌ها
0
به نقل از mehdi25 :
بیشتر توضیح بده

هر گواهی یه فرمتی داره ؟؟؟ یا اینکه مثلا 15 نوع داری که برای هر نفر یکی از آنها رو باید پرینت کنی . حالا به اطلاعاتش کاری ندارم

یه خورده بازش کن تا بتونیم درست راهنمایی کنیم
نه همه گواهیها یک فرمت دارند ولی اطلاعاتی مربوط به هر شخص رو باید در این گواهی گذاشت مثل نام و نام خانوادگی و یا پست سازمانی شخص و ... اینها را قبلا توی یک دیتا بیس ذخیره می کنم وحالا باید در این گواهی باید در جاهای خاصی قرار دهم مثلا


خانم عارفه رسولی پست سازمانی حسابدار دارنده شماره شناسنامه123456 صادره از تهران و ....
 

H_R

مدیر بازنشسته
تاریخ عضویت
30 مارس 2005
نوشته‌ها
3,298
لایک‌ها
17
سن
42
محل سکونت
North Pole
دوست عزیز خیلی خوبه که میخوای برنامت رو طوری بسازی که امکانات بهتری داشته باشه (مثل پرینت پرویو) اما تا جایی که من میدونم اصولا پرویو مال زمانی اه که کاربر توی پرنینت نقش داره (مثلا توی ورد که کاربر یه سند و ایجاد میکنه و بعد میخواد قبل اینکه کاغذ و جوهر مصر کنه ببینه که آیا این سند توی پرینت درست می افته یا نه ) ولی وقتی برنامه وب بیسه و اصولا کاربر نقشی توی ساختن سند نداره خیلی کار نابجایی به نظر میرسه که کاربر بخواد ببینه توی پرینت شکل صفحه خوب می افته یا نه ! به هرحال همینه که هست ، اگر پرینت رو میخواد باید بگیره پون نمیتونه که اصلاحش کنه ! پس بهترین حالت اینه که برنامه نویس طوری برنامه نویسی کرده باشه پرینت در هر صورت خوب و درست از توی پرینتر بیاد بیرون !

میدونم که الان داری انو میخونی و از این جواب تعجب میکنی ;) ولی باور کن دارم راست میگم !
 
بالا