تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] التقارير في الدوت نت مشكلة عويصة (أرجوا الإرشاد)
#1
السلام عليكم

حقا التقارير في الدوت نت مشكلة عويصة
فلم أجد أداة دون مشاكل

استسلمت ل Report لسهولتها وتواجدها افتراضيا بالفيجوال
لكني  أحب التعامل بالكود , وجل المواضيع تتعامل مع النوافذ
أتمنى من أحد الأعضاء أن يساعدني في هذا الكود الذي وضعت
فلم يشتغل



كود :
كود :
       '*****************************************************************************************
       If cn.State = ConnectionState.Open Then cn.Close()
       cn.ConnectionString = "Provider=Microsoft.ace.OLEDB.12.0;" & "Data Source =" & Application.StartupPath & "\bd.accdb"
       cn.Open()
       '*****************************************************************************************



       dt1.Clear()
       da = New OleDbDataAdapter("select * from Table1", cn)

       Me.Table1TableAdapter.Fill(dt1)

       Me.ReportViewer1.RefreshReport()



لقد أرفقت مثال صغيير جدا


الملفات المرفقة
.rar   WindowsApplication1.rar (الحجم : 89.54 ك ب / التحميلات : 39)
الرد }}}
تم الشكر بواسطة:
#2
السلام عليكم ورحمة الله وبركاته

في تقارير الدوت نت لازم تضاف أداة DataSet للمشروع كليك يمين علي اسم المشروع من القائمة تختار NewItem تبحث عن اداة الـ DataSet وتضيفها للمشروع وتضيف داخلها جدول بنفس بنية الجدول اللي عندك في قاعدة البيانات

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


علي العموم المثال بعد التعديل (مرفق).


الملفات المرفقة
.rar   WindowsApplication1.rar (الحجم : 131.88 ك ب / التحميلات : 99)
(وَقُل رَّبِّ زِدْنِي عِلْمًا)

الرد }}}
تم الشكر بواسطة: sniperjawadino , sami2015
#3
أولا وقبل كل شيئ أخي kslawy , أريد أن أقدم لك كل الشكر على وقتك الذي منحته لي وقمت بالتعديل على المثال

جزاك الله كل خير على تعبك

لقد قرأت كلامك ثم أعدت قراءته وفهمت أنك تتكلم على استخدام المعالجات
"لازم تضاف أداة DataSet للمشروع كليك يمين علي اسم المشروع ...."

سؤالي أخي هو ألا يمكنني أن أترجم كل هذا بالكود
فأنا أحاول الابتعاد عن المعالجات , أريد أن أكتب كل شيئ بكود برمجي
بل حتى أني لا أستخدم DataSet
فأنا مثلا أفضل أن أتعامل ب DataTable أو ADODB
فهل تضن أخي أني سأجد طريقة لكتابة الكود

سؤالي الثاني , بعد أن حمللت المرفق المعدل , صراحة فهو مثال جميل وبسيط شكرا أخي
فقط عند تغيير الاستعلام لا أرى أي نتيجة , بل تضهر كل ما يوجد ذاخل القاعدة




أعتذر عن كثرة كلامي
تحملني أخي فأنا بصدد التحول من الفيجوال 6 إلى الدوت نت




الرد }}}
تم الشكر بواسطة: sami2015
#4
لم تظهر نتيجة لأنه لا يوجد حقل بقاعدة البيانات باسم a بل يوجد حقل باسم N راجع واتأكد من قاعدة البيانات المعاك واللي كانت في المثال المرفق
(وَقُل رَّبِّ زِدْنِي عِلْمًا)

الرد }}}
تم الشكر بواسطة: sniperjawadino , sami2015
#5
معك حق أخي
نجح الاستعلام كما أردت أخي
كما أني فهمت جيدا هده الطريقة التي أخبرتني , فقط قليل من تحليل الكود
شكرا على الملاحظات التي وضعتها لي داخل الكود سورس , فقط سهلت علي كثير

فقط أين يمكنني التحكم في مسار القاعدة التي أضيفها لل DataSet

لأني أريدها مثلا هنا " & Application.StartupPath & "\config\bd.mdb
وهو يسجله هنا C:\Users\user\Desktop\bin\Debug\bd.mdb


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


.LocalReport.ReportEmbeddedResource = "WindowsApplication1.Report1.rdlc" ' تحديد مكان وجود التقرير نضف اسم البرنامج العام ثم نقطة ثم اسم التقرير بامتداده

وهل ممكن أفهم ماذا تقصد ب اسم البرنامج العام
الرد }}}
تم الشكر بواسطة:
#6
يعطيك العافية


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

بالنسبة للبرنامج العام هو الاسم الذي سميت به برنامجك منذ بداية انشائه . يعني انت لما أنشئت المثال اللي أرفقته للتعديل عليه كان اسمه هو WindowsApplication1 ذلك هو اسم البرنامج العام.

فرضا عملت برنامج جديد وسميته My App (لاحظ يوجد فراغ بين الكلمتين)

في الكود لازم تملأ ذلك بالفراغ بالخط السفلي (underscore)  فيصبح كود مسار التقرير كالتالي:
PHP كود :
LocalReport.ReportEmbeddedResource "My_App.rdlc" 
لاحظ للخط السفلي بين كلمتي My و App.

والله أعلم

****
***
**
*
(وَقُل رَّبِّ زِدْنِي عِلْمًا)

الرد }}}
تم الشكر بواسطة: sniperjawadino , sami2015
#7
لقد استفدت من كلامك الكثير أخي kslawy

جزاك الله كل خير على وقتك معاي
الرد }}}
تم الشكر بواسطة: kslawy , sami2015



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم