موضوع منقول من المنتدي القديم
اعداد ابن مسقط
قاعدة ألبوم صور مطلوب المساعده فيها
الحل النهائي
http://www.geocities.com/ibnmuscat/Album.zip
و يلي ذلك التفاصيل
الأخوه الكرام
السلام عليكم ورحمة الله وبركاته
صممت قاعدة بيانات على أكسيس لغرض إستخدامها كألبوم شخصي لأفراد الأسره ، وهي مصممه بحيث تخزن ملفات الصور خارجها وتتكون من الحقول التاليه :
مسلسل (حقل رقم) – الاسم (حقل نص) - تاريخ الميلاد (حقل تاريخ) - صورة رقم1 (حقل نص) - صورة رقم2 (حقل نص) - صورة رقم3 (حقل نص)
ملاحظه : حقل صوره يخزن به مسار الصوره في الجهاز فقط.
لقد نجحت بفضل الله في إقتباس بعض الأكواد وتطبيقها على قاعدة ألبوم الصور وخاصة في "حقل صوره رقم1" ، فأصبحت القاعدت تحفظ موقع الصوره وتستعرضها وتكبرها.
سؤالي الأول: حاولت تطبيق ما طبقته في حقل صوره رقم1 على حقلي الصور رقمي 1 و2 ولم أنجح ، فقط تظهر الصور وقت إدخالها وبمجرد إغلاق القاعده أو الإنتقل إلى أي حقل أو سجل تختفي ويبقى موقع الصوره ، كيف أستطيع تثبيتها في حقلي الصور رقمي 2 و 3 ؟
سؤال الثانـي: كيف أستطيع طباعة تقرير يحتوي على 3 ثلاث صور بالإضافة إلى الاسم وتاريخ الميلاد في صفحة واحدة لكل شخص؟
وللمزيد من الإيضاح أرفق لكم نسخة من قاعدة ألبوم الصور ، وأرجو ان أمكن ان يكون التعديل عل نفس القاعده.
http://www.geocities.com/ibnmuscat/Album.zip
والله يوفق الجميع.
الكاتب: ابن مسقط بتاريخ: 8/21/2002 12:00:19 AM
--------------------------------------------------------------------------------
الأخوان/ محمد طاهر ، أبو الهادي ، أشرف
وكذلك بقية الأخوه
هل مشكلتي غير مفهومه أم حلها مستحيل ؟
بصراحه مطلوب مني إنجاز قاعدة بيانات يكون فيها لكل سجل 3 صور ، ويجب أن تخزن الصور بخارجها في مجلد فرعي تفادياً لزيادة حجم القاعدة ، وكما ترون عملت المثال المذكور في الرابط أعلاه وتوقفت عند تلك المشكله ، فهل يمكن مساعدتي في ذلك في أقرب وقت ممكن؟
ولمزيد من التوضيح ، أرجو عدم التردد في طرح الإستفسارات.
والله الموفق.
الكاتب: ابن مسقط بتاريخ: 8/23/2002 11:12:18 AM
--------------------------------------------------------------------------------
هذا هو
الصراحة القاعدة غلبتني شوية
و لكن هذه هي
و المشكلى كانت فى هذا الجزء
Private Sub Form_Current() Call CarregaFoto End Sub
و استبدلته ب
Private Sub Mytabs_Change() If Me.Mytabs.Pages.Item(1).Enabled = True Then Call CarregaFoto ElseIf Me.Mytabs.Pages.Item(2).Enabled = True Then Call CarregaFoto2 ElseIf Me.Mytabs.Pages.Item(3).Enabled = True Then Call CarregaFoto2 End If End Sub Private Sub CarregaFoto() On Error Resume Next Me.img.Picture = "" Me.img.Picture = Me.figura End Sub Private Sub CarregaFoto2() On Error Resume Next Me.img2.Picture = "" Me.img2.Picture = Me.figura2 End Sub Private Sub CarregaFoto3() On Error Resume Next Me.img3.Picture = "" Me.img3.Picture = Me.figura3 End Sub
مع تغيير بعض الاسماء الي الانجليزية ( اسماء ال Tab و صفحاتها )
لكي لا تعمل مشاكل مع الكود
2--------------------------------------------------------------------------------
مشكلتي لم تحل بعد
أخي الكريم/ محمد طاهر
مع تقديري لوقتك الثمين الذي قضيته بين أكواد ألبومي ، ولكن لا تزال المشكله قائمه.
وللمساعده في هذا الأمر ، أضع لك بعض الوصلات لقواعد بيانات تقرأ الصور من مجلدات خارجيه :
http://www.geocities.com/ibnmuscat/Picture_1.zip
http://www.geocities.com/ibnmuscat/Pictures2k.zip
كنت قد أقتبست منها بعض الأكواد ، أرجو الإطلاع عليها وأنت الأقدر على فهم خوارزميتها ربما تساعدك على مساعدتي.
والله الموفق.
الكاتب: ابن مسقط بتاريخ: 8/25/2002 9:05:22 AM
-------------------------------
أرجو ان يكون هذا هو المطلوب
http://www14.brinkster.com/mtarafa/forms/A...bum-Inasqat.zip
--------------------------------------------------------------------------------
تحية شكر وتقدير وأمتنان وطلب إكمال الجميل
أخي الكريم/ محمد طاهر
رائــع رائــع ، نعم هو المطلوب جزاك الله كل الخير.
ملاحظه: تجد في هذا الرابط http://www.geocities.com/ibnmuscat/Album.zip
حل بطريقه مختلفه قام أحد الأخوه بمساعدتي فيه ، أرجو الإطلاع عليه للإستفاده.
أخي/ محمد طاهر وبقية الأخوه الكرام:
أرجو تفضلكم بمساعدتي في تحقيق مطلبي الوارد في السؤال الثاني المذكور أعلاه في بداية الموضوع.
ولكم كل التقدير والإحترام.
المطلوب
http://www14.brinkster.com/mtarafa/forms/A...bum-Inasqat.zip
الكاتب: محمد طاهر بتاريخ: 8/28/2002 2:31:58 PM
--------------------------------------------------------------------------------
نعم نعم هو المطلوب
الأخ الكريم/ محمد طاهر
عمل رائع يعجز لساني عن أن أقول لك كلمة شكر أو تقدير فأكون مقصراً في حقك ، فالعمل والوقت الذي قدمته لي لا يقدر ثمنه بأي عباره ،
ولكني أدعو الله أن يزيدك علماً ، ويرزقك خيراً ، ويجعل مقرك في الأخره في الجنه ... أنه سميع مجيب الدعاء. أمين
تطلعت إلى العمل ولي ملاحظات عليه أدرجها في الأسطر الأتيه :-
ملاحظه أولى : لم أستطع فتح القاعده في بداية الأمر ، وجربت فتحها في إصدارات 2000 و XP وكذلك على أجهزه مختلفه وكانت تفيد بوجود خطأ ما.
لذلك قمت بإنشاء قاعده جديده ومن خلالها قمت بإستيراد كل الكائنات وبذلك تمكنت من الإستفاده من المثال.
ملاحظه ثانيه : عند محاولة معاينه تقرير لأي سجل لا يحتوي أحد حقوله على صوره فان القاعده تعطي الرساله التاليه : Run-time error 13 Type Mismatch Debug
ولا يمكن التغلب عليها إلا بعدم ترك أي حقل من حقول الصور فارغ وربما هذا الأمر غير عملي فيتطلب بعض الأحيان طباعة السجلات حتى لو لم تتوفر صوره.
ملاحظه ثالثه : عند إلغاء أمر إختيار صوره ، فان مسار الصوره السابقه يختفي ، ولا بد من إعادة تخزينه من جديد وبذلك فإن مسارات الصوره معرضه للتغيير.
أرجو المعذره على الإطاله عليك.
والله الموفق.
الكاتب: ابن مسقط بتاريخ: 8/31/2002 6:07:14 AM
هل من مجيب ؟
الأخوه / أبو حمود وأشرف وأبو الهادي و tarekh_2
هل يمكنني أن أحظى بأرائكم وتعديلاتكم على نفس القاعده ؟
--------------------------------------------------------------------------------
مع خالص تحياتي ابن مسقط assq@gawab.com
الكاتب: ابن مسقط بتاريخ: 9/2/2002 11:48:12 AM
--------------------------------------------------------------------------------
الرد
بالنسبة للموضوع الاول و الخاص بالخطأ عند الفتح : لا أعلم لماذا و لكن استخدم debug و أخبرني بالنتيجة
بالنسبة لعدم اختيار صورة فالموضوع يجب معالجته بنفس طريقة مثال ربط البيانات و النسخ الاحتياطي و التصدير الموجود فى الارشيف
بالنسبة لحالة عدم و جود صورة جرب حلان
الاول : استخدم صورة فارغة مكتوب عليها لا يوجد صورة ، و باستخدام جملة if يمكن اختيارها اذا كانت لا توجد صورة فى المسار
الحل الاخر أن تضع on error resume next عند فتح الصورة
الكاتب: محمد طاهر بتاريخ: 9/2/2002 10:30:28 PM
--------------------------------------------------------------------------------
وجدت الحل لبعض الأمور
الأخ/ محمد طاهر
بالنسبة للملاحظه الثانيه الخاصه بعدم تمكني من طباعة السجلات التي لا تحتوي الصور وبمساعدة الأخ/ أبو حمود توصلت إلى حل المشكله بإستبدال الكود التالي :
الكودالقديم:
Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
Me.img.Picture = Me.figura
Me.img2.Picture = Me.figura2
Me.img3.Picture = Me.figura3
End Sub
الكود الجديد :
Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
If Not IsNull(Me.figura) Then Me.img.Picture = Me.figura
If Not IsNull(Me.figura2) Then Me.img2.Picture = Me.figura2
If Not IsNull(Me.figura3) Then Me.img3.Picture = Me.figura3
End Subأما بخصوص الملاحظه الثالثه فلا زلت أبحث لها عن حل والله الموفق.
--------------------------------------------------------------------------------
مع خالص تحياتي ابن مسقط assq@gawab.com
الكاتب: ابن مسقط بتاريخ: 9/3/2002 9:26:46 AM
--------------------------------------------------------------------------------
وجدت الحل لبعض الأمور
الأخ/ محمد طاهر
بالنسبة للملاحظه الثانيه الخاصه بعدم تمكني من طباعة السجلات التي لا تحتوي الصور وبمساعدة الأخ/ أبو حمود توصلت إلى حل المشكله بإستبدال الكود التالي :
الكودالقديم:
Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
Me.img.Picture = Me.figura
Me.img2.Picture = Me.figura2
Me.img3.Picture = Me.figura3
End Sub
الكود الجديد :
Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
If Not IsNull(Me.figura) Then Me.img.Picture = Me.figura
If Not IsNull(Me.figura2) Then Me.img2.Picture = Me.figura2
If Not IsNull(Me.figura3) Then Me.img3.Picture = Me.figura3
End Subأما بخصوص الملاحظه الثالثه فلا زلت أبحث لها عن حل والله الموفق.
--------------------------------------------------------------------------------
مع خالص تحياتي ابن مسقط assq@gawab.com
الكاتب: ابن مسقط بتاريخ: 9/3/2002 9:27:54 AM
--------------------------------------------------------------------------------
الكود
الكود الذي اشرت اليه فى مثال الارشيف
و الذي يعطي رسالة فى حالة عدم الاختيار ( من مثال النسخ الاحتياطي)
Private Sub C_NAME4_DblClick(Cancel As Integer)
Dim ofn As OPENFILENAME
ofn.lStructSize = Len(ofn)
'ofn.hwndOwner = Me.Hwnd
'ofn.hInstance = App.hInstance
ofn.lpstrFilter = "Mdb Files (*.mdb)" + Chr$(0) + "*.mdb" + Chr$(0) + "Mde Files (*.mde)" + Chr$(0) + "*.mde" + Chr$(0)
ofn.lpstrFile = Space$(254)
ofn.nMaxFile = 255
ofn.lpstrFileTitle = Space$(254)
ofn.nMaxFileTitle = 255
ofn.lpstrInitialDir = CurDir
ofn.lpstrTitle = " MT Software "
ofn.flags = 0
Dim A
A = GetOpenFileName(ofn)
If (a) Then
Me![C_NAME4] = Trim$(ofn.lpstrFile)
'MsgBox "File to Open: " + Trim$(ofn.lpstrFile)
Else
MsgBox "Cancel was pressed"
End If
Exit Sub
CmdBrowseErrHandler:
If Err.Number = 32755 Then
MsgBox " You did not change the file name ", 64, "Alert Message "
ElseIf Err.Number = 20477 Then
MsgBox " Invalid file name ", 16, "Alert Message "
Else
MsgBox Str(Err.Number) + Err.Description
End If
Exit Sub
End Subو طبعا يمكنك اظهار الرسالة أو لا ، بعد تعديل الكود ليناسب المثال الحالي
الكاتب: محمد طاهر بتاريخ: 9/3/2002 12:42:21 PM
--------------------------------------------------------------------------------
إجابة
حل المشكلة الثالثة :
Dim مسار_الصورة As String
مسار_الصورة = GetOpenFile_CLT("c:windowsdesktop", ".حدد مكان الصورة")
If مسار_الصورة <> "" Then
Me![Map] = مسار_الصورة
Me![Map] = LCase(Me![Map])
Me![img].Picture = Me![Map]
End If--------------------------------------------------------------------------------
الكاتب: ابوحمود. بتاريخ: 9/3/2002 9:48:37 PM
--------------------------------------------------------------------------------
شكر وتقدير للأخوه محمد طاهر وأبو حمود
الأخوان/ محمد طاهر وأبو حمود
أشكركما جزيل الشكر على وقفتكم بجانبي وجهدكم في البحث والتعديل عن الأكواد المطلوبه ،
فبارك الله فيكما ويسر لكم من أموركم وبارك في رزقكم وزادكم علما
وبعد أن قمت بتعديل الأكواد يسرني أن أنشر قاعدة ألبوم الصور ليستفيد منها الجميع من الرابط التالي:
http://www.geocities.com/ibnmuscat/Album.zip
لا تسنونا من الدعاء الطيب ،
والله يوفق الجميع.
--------------------------------------------------------------------------------
مع خالص تحياتي ابن مسقط assq@gawab.com
الكاتب: ابن مسقط



