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

الداتا جريد

مغلق
بدأه HASHAD_MAHMOUD في 27 أغسطس 2005 · 14 رد · 1,833 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

:o عندي سؤال عن الداتا جريد :o

بعد ما اضبط خاصيه datasourc & datamember

تظهر الداتا جريد باسماء الحقول اللتي سميتها بيها خلال عملي لقاعده البيانات واللتي غالبا ما تكون اختصار لاسم الحقل

فماذا افعل حتي اجعلها تظهر اسم الحقل بالعربي مثلا

ايام فيجوال 6 كان ممكن ولكن في الدوت نت لا اعرف كيف ارجو من يعرف يدلني

شكرا

27_08_05_01_07_19_1125130039untitled_.JPG

سبحان الله وبحمده سبحان الله العظيم

لا اله الا الله محمدا رسول الله

اللهم اغفر للمسلمين والمسلمات والمؤمنين والمؤمنات الاحياء منهم والاموات

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

حمل كريستال ريبورت 10 اربعه اصدارات

ww12kz.jpg

hashad.jpg

#2

يتم هذا الأمر عن طريق جملة السكويل، وهنا يجب أن تعمل select لكل عمود على حده وليس لكل الأعمدة مع بعضها، فمثلاً (وللأختصار) إن كانت الجدول myTable عندك فيه عمودين أولهما ProductName وأردت أن تسميه في الداتا قريد Item وفيه عمود ProductPrice وأردت أن تسميه Price فإنك تستطيع إستخدام هذه الجملة:

SELECT ProductName AS 'Item' , ProductPrice as 'Price' FROM myTable

تم تعديل هذه المشاركة بواسطة HMS في 27 أغسطس 2005 في 11:23

Learn Japanese :>>> http://www.nouben.com/

#3

شكرا لك أخ HMS

ولكن هذا يطيل عبارة select وبالنسبة للأشخاص الذين ليس لهم خبرة كافية في عبارات الـ SQL قد يسبب لهم هذا ارباكا فهل توجد طريقة لعمل ذلك من خصائص الداتا جريد

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#4

الطريقة التي ذكرها زميلنا العزيز أنا لم أجربها ولكن هي طريقة برمجية وإن كانت صحيحة فهي قوية جداً اما الطريقة التي انا أقوم باستخدامها فهي مختلفة تماما وتؤدي الغرض من المهمة وهي كالتالي:

1)أذهب إلى خصائص الداتا جريد ومن القائمة أختر Table Style -------> Collection ومنها ستظهر لك نافذة فيها خصائص في أسفل النافذة ستجد خاصية Mapping Name أكتب فيها فقط أسم قاعدة البيانات بدون أي مسار وأعلاها ستجد Grid Column Styles ستجد Collection أخترها ستجد نافذة جديدة منها اكتب التالي:

أضغط Add وبعدها من النافذة أكتب في HeaderText أسم العمود بالعربي كما تشاء وفي النافذة أيضاً أكتب في Mapping Name أسم العمود في قاعدة البيانات وهناك ايضا Width وهو لتغير عرض كل عمود على حدة كما تشاء تكبير أو تصغير حسب احتياجك ويعدها أضغط OK OK OK وإن شاء الله تعمل هذه الطريقة.

#5

فعلا الجمله هتبقي طويله جدا

ده كده فيجوال 6 احسن في النقطه ده لانها كانت ضمن خصائص الجريد

سبحان الله وبحمده سبحان الله العظيم

لا اله الا الله محمدا رسول الله

اللهم اغفر للمسلمين والمسلمات والمؤمنين والمؤمنات الاحياء منهم والاموات

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

حمل كريستال ريبورت 10 اربعه اصدارات

ww12kz.jpg

hashad.jpg

#6

اخ mamoud

انت رائع وفرت عليا جهد كبييييير جدا بارك الله فيك وجعلها في ميزان حسناتك

كما اشكر اخوي سامر واخوي HMS لمساعدتي بارك الله فيهما

تم تعديل هذه المشاركة بواسطة HASHAD_MAHMOUD في 27 أغسطس 2005 في 12:30

سبحان الله وبحمده سبحان الله العظيم

لا اله الا الله محمدا رسول الله

اللهم اغفر للمسلمين والمسلمات والمؤمنين والمؤمنات الاحياء منهم والاموات

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

حمل كريستال ريبورت 10 اربعه اصدارات

ww12kz.jpg

hashad.jpg

#7

السلام عليكم

شكراً للأخوة الكرام و الخبراء الذين أدلو بأفكراهم النيرة بهذا الشأن.

بالنسبةِ لي فأنا دائماً أفضلها في وقت التشغيل run time فهي أفضل بكثير من الـ design time

لاسباب منها مثلاً لو افترضنا انك قمت بمسح الـ datagrid فإن الكود لا زال محتفظ بالتنسيق و الربط

فلو قمت مرة أخرى بإدراج datagrid فلن تحتاج إلا لتغير اسم الـ datagrid الجديدة بالاسم السابق.

كذلك من حيث إمكانية إستخدام الكود في مشاريع أخرى,

الطريقة كالتالي

 Sub BindingDGBooks()

        Try
            
            ' You must clear out the TableStyles collection before 
            DGBooks.TableStyles.Clear()

            Dim grdTableStyle1 As New DataGridTableStyle
            With grdTableStyle1
                .MappingName = DsMain1.Books.TableName
            End With


            Dim grdColStyle1 As New DataGridTextBoxColumn
            With grdColStyle1
                .MappingName = "ISBN"
                .HeaderText = "رقم الكتاب"
                .Width = 90
                .NullText = String.Empty
            End With

            Dim grdColStyle2 As New DataGridTextBoxColumn
            With grdColStyle2
                .MappingName = "Book"
                .HeaderText = "اسم الكتاب"
                .Width = 300
                .NullText = String.Empty
            End With
            grdTableStyle1.GridColumnStyles.AddRange _
                (New DataGridColumnStyle() {grdColStyle1, grdColStyle2})
            DGBooks.TableStyles.Add(grdTableStyle1)

        Catch ex As Exception
            Throw ex
        End Try
    End Sub

والله أعلم

تم تعديل هذه المشاركة بواسطة الغملاسي في 19 سبتمبر 2005 في 08:01

في المثال يتضح المقال

#8

السلام عليكم ورحمة الله وبركاته،

يظن البعض بأن التعامل Visually مع الأدوات هو الأساس في البرمجة، وللأسف هذا مفهوم خاطيء ولا يمكن تسمية من يستخدم هذا الإسلوب بأنه "مبرمج"، ليس لأنه لا يستطيع كتابة الكود بل لأنه أصلاً لا يقوم بعمل برنامج، فأنا عندما يكون عندي قاعدة بيانات (ولنفترض بأنها أكسس) وأقوم فقط بوضع datagrid على فورم وأضبط خصائصه بشكل مرئي فهذا ليس برنامج (تستطيع أن تقوم بذلك في الأكسس ولا داعي لأن ترهق نفسك بتعلم الفيجوال بيسك نيت)... الكود هو الأساس في البرمجة، والكود يتطلب منك تعلم ال SQL وتعلم ال regular expressions ويتطلب منك تعلم ال XML، وإن كنت تعمل على ال ASP.NET يتطلب أيضاً HTML..الخ ..الخ. وقد سبقني الأخ الغملاسي بارك الله فيه لتوضيح هذه النقطة بإختصار (قمت بإعداد ردي قبل قراءة رده وإلا لما أطلت عليكم).

الأن الى موضوع مشكلتنا، إن أردت طريقة بَصرية بسيطة فقم فقط بوضع Datagrid على الفورم وبعد ذلك وعندما تضبط خصائص ال DataSet قم بوضع الأسماء التي تريدها في ال Alias، فهذه الطريقة هي طريقة سريعة جداً لحل المشكلة . ولكن برنامجك (إن كان فعلاً برنامج فعليّ) يتطلب مرونة أحياناً وهذه المرونة لن توفرها الأدوات بجمودها، لذلك فلا بد أن يتعلم أحدنا كتابة الكود ويتعلم أساسيات ال SQL، فبرنامجك قد يتطلب عمليات حسابيّة معقّدة أو إجراءات مرنة وهذه توفرها لك ال SQL (وعند التنفيذ يكون الكود أسرع ايضاً)، وكود ال SQL الذي وضعته هو كود بسيط ويجب أن يعلمه المبتديء في البرمجة قبل محترفها.

بالنسبة للأخوة الذين تساءلوا إن كان الكود يعمل، الجواب لا :lol: ، لقد أخطأت في كتابته لأنني كتبته من الذاكره، ويجب أن يكون الكود كالتالي:

"SELECT productName AS Item, procutPrice AS Price FROM product"

قمت بعمل برنامج صغير لكيفية القيام بذلك وكيفية ربط الداتاغريد مع الداتاسيت عن طريق الكود (البرنامج مُرفق).

WindowsApplication11.zip

تم تعديل هذه المشاركة بواسطة HMS في 27 أغسطس 2005 في 16:24

Learn Japanese :>>> http://www.nouben.com/

#9

شكرا لكم على التوضيح

لاشك في أن طريقة عبارة الـ select هي الأفضل بالنسبة لمن يجيد أوامر الـ SQL وبالنسبة لي يمكنني العمل بكلتا الطريقتين كونه لدي معلومات جيدة في موضوع SQL ولكن لاحظت العديد من الأشخاص لايعرفون كيفية كتابة عبارات الـ select التي تعتبر الأساس في أوامر SQL ومن هنا جاء سؤالي حول امكانية عمل ذلك من خصائص الداتا جريد

وحتى الآن لم أدخل في موضوع قواعد البيانات من خلال دوت نيت لأنني انتقلت حديثا من الفيجول بايزيك 6 وأنا أحاول امتلاك اللغة قبل الدخول في مواضيع قواعد البيانات

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#10

وبما أننا نتحدث عن موضوع ربط قواعد البيانات بالداتا جريد ارجو توضيح أمر إن لم يكن به خروج عن الموضوع

أيام فيجول بايزك 6 كنت أعمل إجرائية تقوم بإنشاء قاعدة البيانات وإضافة الجداول إليها أثناء تنفيذ البرنامج وقد توصلت إلى نقل طريقة إنشاء قاعدة البيانات إلى فيجول بايزك دوت نيت وأعتقد أنني وضعتها منذ فترة هنا في المنتدى وسؤالي هنا هل أستطيع تغيير الـ connection string وربطه مع قاعدة البيانات المنشأة حديثا في وقت زمن التنفيذ حسب ما يختاره المستخدم من أمر قائمة Open الذي سأقوم بوضعه في برنامجي كما كنت أفعل أيام فيجول بايزيك 6

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#11

بالطبع أخي فالموضوع يجب أن يكون سهلاً بالنسبة لك، فمثلاً عند الضغط على قائمة Open يجب أن يفتح لدينا Openfiledialog يختار منه المستخدم قاعدة البيانات، وبعد ذلك نقوم بدمج مسار تلك القاعدة (يكون Openfiledialog.FileName) مع ال connectionstring للقاعدة، فلو كان لدينا connection بإسم con وكان لدينا قاعدة بيانات بإسم HMS موجود في نفس مجلد البرنامج التنفيذي فإننا نكتب السترينغ له بالشكل التالي:

Con.ConnectionString = "Provider=Microsoft.jet.oleDB.4.0;Data Source=" & Application.StartupPath & "\HMS.mdb;"

الآن يجب عليك فقط بوضع مسار وإسم القاعدة (Openfiledialog.FileName ) مكان Application.StartupPath & "\HMS.mdb في الكود أعلاه (أظنك تعرف كيف تشبك السترينغ مستخدماً الأوبريتر &).

تستطيع إنزال البرنامج الصغير الذي وضعته في هذه المشاركة سالفاً لترى كيف نضع نقوم بكتابة ال connection بالكود.

تم تعديل هذه المشاركة بواسطة HMS في 27 أغسطس 2005 في 19:32

Learn Japanese :>>> http://www.nouben.com/

#12

انا مش عارف اشكركم ازاي يا جماعه

الف الف الف شكر

سبحان الله وبحمده سبحان الله العظيم

لا اله الا الله محمدا رسول الله

اللهم اغفر للمسلمين والمسلمات والمؤمنين والمؤمنات الاحياء منهم والاموات

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

حمل كريستال ريبورت 10 اربعه اصدارات

ww12kz.jpg

hashad.jpg

#13

شكرا لك على التوضيح أخ HMS

أنا فعلا نزلت مثالك بس مع الأسف لم أجربه حتى الآن

شكرا لك مرة أخرى

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#14

HMS الاخ

من الخبراء المعتمدين حقا فهوه يعتمد عليه فعلا

سبحان الله وبحمده سبحان الله العظيم

لا اله الا الله محمدا رسول الله

اللهم اغفر للمسلمين والمسلمات والمؤمنين والمؤمنات الاحياء منهم والاموات

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

حمل كريستال ريبورت 10 اربعه اصدارات

ww12kz.jpg

hashad.jpg

#15

الأخ HMS القدير

طلب بسيط بس لو تكرمت ممكن تضيف على برنامجك الخاص بالداتا قريد المرفق مع ردك كيف ممكن نتحكم بعرض العمود كل واحد على حسب محتوياته او تحديد عرض كل عمود بشكل مستقل عن الآخر وايضا توسيط المحتويات لكل عمود.

واذا تكرمت بس نعرف كيف ممكن نضيف عمود مخفي ؟؟ مع الف شكر

<span style='color:green'>سؤل ابن عباس عن علمه كيف جمعه فقال :( أوتيت لسانا سؤولا وقلبا عقولا)</span>

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

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