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

أريد معرفة كيفية تجميع عمود الاجمالي في الأداة دى جريد

مغلق
بدأه عز الدين احمد في 3 ديسمبر 2007 · 26 رد · 1,915 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

ارجو من مشرفي المنتدى الرد علي هذة المشكلة حيث انها مسغرقة وقت كثير دون رد عليها

والمشكلة هي كيفية تجميع عمود الاجمالي في الأداة دى جريد

ارجو الرد سريعا

وجزاكم الله كل خير

#3
Eng. Usama El-Mokadem كتب:

يا اخي الفاضل انا وصلت لهذة المواضيع ولكنها غير واضحة بالنسبة لي ارجو التكرم علي بمثال بسيط ويكون واضح وارجو المعذرة

#4
اقتباس
HnHn : العنوان المخالف : مشرفي المنتدى

السلام عليكم

برجاء من يعرف كيفيية تجميع عمود في الاداة دى بي جريد ان يخبرني بها واعلم انا هناك مشاركة في هذا الموضوع ولكني لا افهمه ارجو عمل مثال بسيط وواضح وارجو الاهتمام لان مشروعي متوقف علي هذة الجزئية

او اريد رابط مباشر للآداة التقارير الذكية لان الرابط الذى في قسم التقارير في صفحة رقم 13 لايعمل منذ فترة طويلة جدا

او اي اداة للتقارير بخلاف الكريستال والداتا ريبورت

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

وجزاكم الله كل خير علي هذة المشاركات الرائعة

تم تعديل هذه المشاركة بواسطة HnHn في 5 ديسمبر 2007 في 10:44

#5

اخ عز الدين احمد

ملاحظات هامة :

عنوان موضوعك مخالف كان من المفترض ان يتم اغلاقه

كما انه لا يفضل تعدد الاسئلة في موضوع واحد يجب ان يكون كل سؤال في موضوع مستقل لكي يستجيب لكل البعض بسرعه

سأجيبك : على فقرة

اقتباس
برجاء من يعرف كيفيية تجميع عمود في الاداة دى بي جريد ان يخبرني

الحل هنا

سجل ايميلك هنا

googlejb5.gif ليصلك كل ما هو مفيد في عالم البرمجة
#6
HnHn كتب:
اخ عز الدين احمد

ملاحظات هامة :

عنوان موضوعك مخالف كان من المفترض ان يتم اغلاقه

كما انه لا يفضل تعدد الاسئلة في موضوع واحد يجب ان يكون كل سؤال في موضوع مستقل لكي يستجيب لكل البعض بسرعه

سأجيبك : على فقرة

الحل هنا

شكرا علي هذة الاجابة وانا اقدم اعتذارى علي تكرار الموضوع ولكن التكرار ياتي نتيجة عدم الرد

انا اسف جدا ولكن مع هذا المجهود من المشرف فالمثال غير واضح بالنسبة لي

انا عاوز بكل بساطة تجميع 1+2+4+5+6+7 في عمود في الدى بي جريد عاوز الكود بدون امثلة مرفقة

واقدم اعتذارى مرة اخرى وجزاكم الله كل خير

#7

أخي الكريم افضل حل لك ان تضع المثال في الموضوع حتى يتسنى للأخوان التعديل عليه

#8

مش قابل رفع الملف

#10

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

#12

هدا هو ااحل

On Error Resume Next

Dim i As Integer

Dim Som As Long

Som = 0

For i = 1 To Adodc1.Recordset.RecordCount

Som = Som + Adodc1.Recordset.Fields(3).Value " fields(3) هو رقم الحقل في الداتا قريد "

Adodc1.Recordset.MoveNext

Next i

Label15.Caption = Som

الحقل الدي تريد ان تجمع قيمه يجب ان يكون رقمي

دعائكم الصالح

On Error Resume Next

Dim i As Integer

Dim Som As Long

Som = 0

For i = 1 To Adodc1.Recordset.RecordCount

Som = Som + Adodc1.Recordset.Fields(3).Value

Adodc1.Recordset.MoveNext

Next i

Label15.Caption = Som

لا تنسى ان يكون الحقل اللدي تريد جمع قيمه رقمي nimureque

لا تنسونا بالدعاء

#13

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

اجمالي الفلد الاول 200 جنيه

اجمالي الفلد الثاني 300 جنيه

اجمالي الفلد الثالث 500 جنيه

اجمالي الفلد الرابع 100 جنيه

يكون المجموع الذي يظهر في التكست بوكس هو 1100

ولكن هذا الكود يعطي الناتج 4

وجزاك الله خيرا

#14
اقتباس
انا اسف جدا ولكن مع هذا المجهود من المشرف فالمثال غير واضح بالنسبة لي

عزيزي B)

المثال بسيط يتركز في جملة استعلام اساسها كما يلي

	SQLstmt = "SELECT sum(Quantity) FROM Table"

sum هي من تتولى عملية جمع المبالغ المسنده لهذا الحقل Quantity

Table اسم الجدول

SQLstmt المتغير المسند له القيمة

بمعنى انك تستخدم جملة الاستعلام وتسندها لداتا غريد لتظهر البيانات كما تريد

والزبدة في المثال السابق تظهر في هذا الكود

	SQLstmt = "SELECT Item,Cost,Quantity,[Cost]* [Quantity] AS Total FROM query1"
	Set rs1 = New ADODB.Recordset
	rs1.Open SQLstmt, cn, adOpenStatic, adLockOptimistic, adCmdText
	Set DataGrid1.DataSource = rs1

تم تعديل هذه المشاركة بواسطة HnHn في 10 ديسمبر 2007 في 00:00

سجل ايميلك هنا

googlejb5.gif ليصلك كل ما هو مفيد في عالم البرمجة
#15

اخي hnhnجملة sql مش شغالة وعاوز اعرف شرحها

Set rs1 = New ADODB.Recordset

rs1.Open SQLstmt, cn, adOpenStatic, adLockOptimistic, adCmdText

عاوز اعرف احط السطرين دول فين في البرنامج

Set DataGrid1.DataSource = rs1

وكذلك الجملة دي اين اضعها

#16
اقتباس
اخي hnhnجملة sql مش شغالة وعاوز اعرف شرحها

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

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

تم تعديل هذه المشاركة بواسطة HnHn في 11 ديسمبر 2007 في 00:01

سجل ايميلك هنا

googlejb5.gif ليصلك كل ما هو مفيد في عالم البرمجة
#17

المثال مرفق والمشكلة في الفورم الرابع

حيث اريد تجميع عمود الاجمالي في الاداة واظهار المجموع في التكست بوكسhalmy.rar

#18

تفضل حلين للمسألة

'HnHn : الحل الاول بجملة الاستعلام

Dim SQ As String
SQ = "SELECT SUM(total_cost) as المجموع  FROM totalcost"
Data2.RecordSource = SQ
Data2.Refresh

HnHn: الحل الثاني بطريقة جمل التكرار

Data2.RecordSource = "select * from totalcost"
Data2.Refresh

Dim tot
Do Until Data2.Recordset.EOF = True
tot = Val(Data2.Recordset![total_cost])
Text1 = Val(tot) + Val(Text1)
Data2.Recordset.MoveNext
Loop

سجل ايميلك هنا

googlejb5.gif ليصلك كل ما هو مفيد في عالم البرمجة
#19

الاخ hnhnجزاك الله كل خير علي هذا المجهود وانا حقيقي عاجز عن الشكر

ولكن هناك استفسار وارجو ان يتسع صدرك لهذة الاسئلة

ما المقصود بكلمة asالمجموع

في الكود الاول حيث انه مش شغال

الكود الثاني شكال كويس جدا ولكن هناك مشكلة انه بيحتفظ بقيمة المجموع

بمعني انني عملت بحث من يوم 1/1/2007 الي 1/1/2007

وكان الناتج مثلا 100 ج

وبعد ذلك وفي نفس الوقت ودون ان اخرج من الشاشة ثم اعود اقم بعمل بحث اخر ويكون من تاريخ 1/1/2007 الي 1//4/2007

ويكون المجموع مثلا 200 جنيه

الكود يقوم بجمع مرة البحث الاولي علي مرة البحث الثانية فيكون الناتج 300 ج

وشكرا

#20
اقتباس
ما المقصود بكلمة asالمجموع

في الكود الاول حيث انه مش شغال

بالعكس فالكود شغال والمقصود به انظر للصورة

549564106310.JPG

اقتباس
لكود الثاني شكال كويس جدا ولكن هناك مشكلة انه بيحتفظ بقيمة المجموع

ضع هذه الجملة قبل بدء عملية التكرار

Data2.Recordset.MoveFirst

ليصبح الكود بالشكل التالي

Data2.RecordSource = "select * from totalcost"
Data2.Refresh

Dim tot
Data2.Recordset.MoveFirst
Do Until Data2.Recordset.EOF = True
tot = Val(Data2.Recordset![total_cost])
Text1 = Val(tot) + Val(Text1)
Data2.Recordset.MoveNext
Loop

سجل ايميلك هنا

googlejb5.gif ليصلك كل ما هو مفيد في عالم البرمجة
#21

اخي الكريم ما زلت مش فاهم المصود ب as المجموع حيث هذا الكود مش شغال

والكود الثاني بعد اضافة السطر ما زال يحتفظ بقية المجموع ايضا

يعني في الكود الاول اسيب كلمة المجموع مكتوبة زي ماهية ام اشيل كلمة المجموع واضع مكانها حاجة اخرى

ارجو التوضيح

#22

كلمة المجموع ... هي عنوان في دبي غريد فقط لا اكثر وهناك مثال مبسط لكي تعرف لماذا

sum_sql.rar

تم تعديل هذه المشاركة بواسطة HnHn في 12 ديسمبر 2007 في 18:21

سجل ايميلك هنا

googlejb5.gif ليصلك كل ما هو مفيد في عالم البرمجة
#23

طيب اخي الكريم الكود الثاني ما زال يحتفظ بقيمة المجموع ماذا افعل

#24

يا حبيب الحل ابسط ما يكون لو انك فكرت قليلا وانا كنت متعمد عمل هذا حتى ارى

ان كنت تقوم بالنسخ واللصق فقط دون تفحص ما تكتب او تنظر له

على العموم تفضل

Data2.RecordSource = "select * from totalcost"
Data2.Refresh
Text1 = "0"
Dim tot
Data2.Recordset.MoveFirst
Do Until Data2.Recordset.EOF = True
tot = Val(Data2.Recordset![total_cost])
Text1 = Val(tot) + Val(Text1)
Data2.Recordset.MoveNext
Loop

واتمنى انك تكتشف الحل في الكود

تم تعديل هذه المشاركة بواسطة HnHn في 12 ديسمبر 2007 في 19:11

سجل ايميلك هنا

googlejb5.gif ليصلك كل ما هو مفيد في عالم البرمجة
#25

اخي الكريم شكرا لك شكرا جزيلا علي هذا الجهد

انا بالفعل اخذت الكود نسخ ولصق اولا لكي اتاكد انه يعمل وبعد ذلك اقوم نتفصيص الكود سطر سطر واشوف مدى التغيير

وبالنسبة للكود الثاني انا كان عندى حل وهو انا اعمل زر اخر اسمه بحث جديد يكون بتفريغ الدى بي جريد ولكني كنت اود ان اعرف هذا الكود كاملا

فجزاك الله كل خير وشكرا علي طول بالك علي

اخوك عز الدين احمد

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

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…