الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كريستال ريبورت xi والصلاحيات

مغلق
بدأه asdsuez في 12 أبريل 2007 · 3 رد · 1,158 مشاهدة · في تصميم وبرمجة التقارير
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

عندى مشكله وهى ظهور نافذه طلب ال dsn وكلمه المرور فى كل مره ارغب فى الطباعه

مع العلم اننى استخدم

crystal report xi

واعرض باستخدام الكود التالى

 Dim rss As New Recordset
	Dim appw As New CRAXDDRT.Application

	Dim tbl As CRAXDDRT.DatabaseTable
	Dim Tdsn, Tid, Tpwd, tdb, tser As String

	Dim X, adv1, adv2, adv3, adv4 As String

	Dim db As New ADODB.Connection
	'
	db.Open "provider = microsoft.jet.oledb.4.0;data source =" & App.Path & "\GrsCn.mdb"
	Set Rs = Nothing
	Rs.Open "DSNCode", db, adOpenKeyset, adLockReadOnly
	'
	Tdsn = Rs("DSN")
	Tid = Rs("ID")
	Tpwd = Rs("PWD")
	tdb = Rs("DB")
	tser = Rs("SER")

	Rs.Close
	db.Close

	Cn.Execute "Drop View " & ViewName
	Cn.Execute "Create View " & ViewName & " as " & SQLsentence
	X = App.Path & "\rep\" & ReportName & ".rpt"


	appw.LogOnServer "crdb_odbc.dll", Tdsn, tdb, Tid, Tpwd
	Set rpt = appw.OpenReport(X)
	rpt.Database.LogOnServer "crdb_odbc.dll", Tdsn, tdb, Tid, Tpwd
	'cfg = rpt.Database.Tables.Count

	Dim sserver, sDatabase, sTblName, Msdd, sDBUserName, sDBPassword As String

	sserver = Tdsn
	sDatabase = tdb
	sDBUserName = Tid
	sDBPassword = Tpwd

	For Each tbl In rpt.Database.Tables
 sTblName = tbl.Name
		Msdd = tbl.Name
		tbl.SetLogOnInfo sserver, sDatabase, sDBUserName, sDBPassword
		tbl.Location = sDatabase & ".dbo." & sTblName

		If Not tbl.TestConnectivity Then

			'<can't connect error processing>

			Exit For
		End If
	Next





FrmRepView.WindowState = 2
	FrmRepView.Top = MDIForm1.Picture1.Height + 450
	FrmRepView.Show

	FrmRepView.CrystalActiveXReportViewer1.Refresh
	FrmRepView.CrystalActiveXReportViewer1.ReportSource = rpt
	FrmRepView.CrystalActiveXReportViewer1.ViewReport

ASDSUEZ

#2

اه ياجماعه ياريت حد يشارك

ASDSUEZ

#4
asdsuez كتب:
عندى مشكله وهى ظهور نافذه طلب ال dsn وكلمه المرور فى كل مره ارغب فى الطباعه

مع العلم اننى استخدم

crystal report xi

واعرض باستخدام الكود التالى

 Dim rss As New Recordset
	Dim appw As New CRAXDDRT.Application

	Dim tbl As CRAXDDRT.DatabaseTable
	Dim Tdsn, Tid, Tpwd, tdb, tser As String

	Dim X, adv1, adv2, adv3, adv4 As String

	Dim db As New ADODB.Connection
	'
	db.Open "provider = microsoft.jet.oledb.4.0;data source =" & App.Path & "\GrsCn.mdb"
	Set Rs = Nothing
	Rs.Open "DSNCode", db, adOpenKeyset, adLockReadOnly
	'
	Tdsn = Rs("DSN")
	Tid = Rs("ID")
	Tpwd = Rs("PWD")
	tdb = Rs("DB")
	tser = Rs("SER")

	Rs.Close
	db.Close

	Cn.Execute "Drop View " & ViewName
	Cn.Execute "Create View " & ViewName & " as " & SQLsentence
	X = App.Path & "\rep\" & ReportName & ".rpt"
	appw.LogOnServer "crdb_odbc.dll", Tdsn, tdb, Tid, Tpwd
	Set rpt = appw.OpenReport(X)
	rpt.Database.LogOnServer "crdb_odbc.dll", Tdsn, tdb, Tid, Tpwd
	'cfg = rpt.Database.Tables.Count

	Dim sserver, sDatabase, sTblName, Msdd, sDBUserName, sDBPassword As String

	sserver = Tdsn
	sDatabase = tdb
	sDBUserName = Tid
	sDBPassword = Tpwd

	For Each tbl In rpt.Database.Tables
 sTblName = tbl.Name
		Msdd = tbl.Name
		tbl.SetLogOnInfo sserver, sDatabase, sDBUserName, sDBPassword
		tbl.Location = sDatabase & ".dbo." & sTblName

		If Not tbl.TestConnectivity Then

			'<can't connect error processing>

			Exit For
		End If
	Next
FrmRepView.WindowState = 2
	FrmRepView.Top = MDIForm1.Picture1.Height + 450
	FrmRepView.Show

	FrmRepView.CrystalActiveXReportViewer1.Refresh
	FrmRepView.CrystalActiveXReportViewer1.ReportSource = rpt
	FrmRepView.CrystalActiveXReportViewer1.ViewReport

-------------------------------------------------------------------------------------------------------------------------------------------------

يعطيك العافية،،،،،،،،،،،،،،،،

في عدة مشاريع لي كانت تظهر هذه المشكلة تماماً ويطلب مني DSN اسم المستخخدم وكلمة المرور

ولكن اتضح لي أن ظهور هذه الرسالة عند خلل في الاتصال مع قاعدة البيانات المستخدمة للريبورت

فالرجاء التأكد من الاتصال بقاعدة البيانات الصحيحه من خلال خصائص الريبورت اللي انت اعملته وتأكد من أن الاتصال صحيح

هذا الموضوع مغلق.

مواضيع مشابهة