اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

هدية: إحمل برامجك داخل قاعدة بياناتك


jjafferr

الردود الموصى بها

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

 

في أحد المشاريع التي قمت بها ، كنت محتاج الى برنامج خارجي ليقوم ببعض المهام للمشروع ،

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

وبما ان فقدان/حذف هذا البرنامج يجعل المشروع عاجز عن العمل ، لم يكن عندي خيار ، سوى ان اجعل هذا البرنامج داخل قاعدة البيانات ، بطريقة تسمى Blob :rol:

 

المرفق فيه هذه الملفات:

Blob.Clipboard01.jpg.1e9973bdd276ee11958

.

النموذج frm_Blob مهم في انه يسمح لك بوضع برامجك في قاعدة البيانات بسهولة ، والزر الاخر هو لتصدير هذا البرنامج الى اي مجلد في الكمبيوتر (لعمل التجارب مثلا) ،

وقد وضعت برنامجين في قاعدة البيانات المرفقة:

1. pdftk.exe والذي يقوم بالعديد من العمليات لملفات الـ pdf ،

2. Arc5_S_BE.mdb ، وهي قاعدة بيانات فاضية ، وبها جداول مؤقته ، فبدل ان اعمل هذه الجداول المؤقته داخل قاعدة بياناتي ، ويكبر حجمها ، رأيت ان استعمل جداول خارجية ، وعند اغلاق البرنامج ، كنت اقوم بحذفها من المجلد:

Blob.Clipboard02.jpg.c5700b19a3dcd4aa776

.

لعمل البرنامج الاول ، استخدم الزر رقم 1 ، والذي سيصدر البرنامج pdftk.exe الى مجلد قاعدة البيانات ، ثم سيدمج الملفين a.pdf و b.pdf ويحفظ النتيجة في ملف ab.pdf ، ويفتحه ،

بينما الزر رقم 2 ، سيصدر قاعدة البيانات Arc5_S_BE.mdb الى المجلد الرئيسي لقاعدة بياناتنا:

Blob.Clipboard03.jpg.b99597eddcbcc21f541

.

عند الضغط على الزر 1 ، سنرى هذه الملفات في المجلد الرئيسي لقاعدة البيانات:

Blob.Clipboard04.jpg.4b1bd10ea8eb9d9a0f1

.

 

ان شاء الله يكون فيه فائدة للجميع :rol:

جعفر

Blob.zip

  • Like 7
  • Thanks 2
رابط هذا التعليق
شارك

حياك الله اخوي جعفر

اليومين هذي فضيت حبتين فاللله يعينك على مداخلاتي

البرنامج لم يعمل واعتقد ويتم الاغلاق  حيث اعمل على 2013

وبعيد عن البرنامج راح اعلق على الفكرة او بالادق الميجانيزم 

1. الفكرة تولدت لخطورة حذف الملف المرفق وهنا الفكرة جعلت الملف المرفق اهم من ملف القاعدة وهذا غير منطقي ! باختصار لو تم حذف ملف القاعدة لذهبت وذهب البرنامج المحمل بل بحذف السجل الحامل للبرنامج >>> كذا حذف البرنامج !!!

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

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

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

 

1 ساعه مضت, jjafferr said:

2. Arc5_S_BE.mdb ، وهي قاعدة بيانات فاضية ، وبها جداول مؤقته ، فبدل ان اعمل هذه الجداول المؤقته داخل قاعدة بياناتي ، ويكبر حجمها ، رأيت ان استعمل جداول خارجية ، وعند اغلاق البرنامج ، كنت اقوم بحذفها من المجلد:

حاولت دبل كليك على الملف من الجدول مباشرة ولم تفتح معي ! هل هنا به مشكلة ام المفروض طبيعي تفتح زيها زي اي ملف ole ؟

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

اخيرا موضوع تشكر عليه وبالتوفيق

 

 

  • Like 1
رابط هذا التعليق
شارك

أستاذ :  جعفر  

تحية طيبة وبعد 

بعد دمج جميع كائنات برنامجك مع برنامجي لم يعمل الفورم الخاص بالرفع والتنزيل مع انه يعمل خارج برنامجي وكانت رسالة الخطأ ( يوجد صورة بالمرفقات ) فما الحل ؟

مع الشكر والتقدير 

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

التقاط.JPG

رابط هذا التعليق
شارك

منذ ساعه, omarahmed1424 said:

بعد دمج جميع كائنات برنامجك مع برنامجي لم يعمل الفورم الخاص بالرفع والتنزيل 1.مع انه يعمل خارج برنامجي وكانت 2.رسالة الخطأ ( يوجد صورة بالمرفقات ) فما الحل ؟

مع الشكر والتقدير 

3. وأذكركم بالوعد بالجديد في برنامج مسقط التقارير وعذرا على الإلحاح فإني في حاجة ماسة له بالعمل . 

وعليكم السلام :rol:

1. هذا اهم شئ ، وهو ان البرنامج يشتغل منفردا :rol:

2. ما ادري ، لازم اشوف برنامجك ، وخطوة بخطوة نشوف شو المشكلة ، وعليه نلقى الحل ان شاء الله :rol:

3. صدّقني اني اريد اكمل البرنامج اكثر مما تتصور ، ولكن وكما اخبرتك سابقا ، عندي اولويات اخرى ، ان شاء الله اخلصها وارجع للتقرير :rol:

 

جعفر

رابط هذا التعليق
شارك

14 ساعات مضت, رمهان said:

حياك الله اخوي جعفر

اليومين هذي فضيت حبتين فاللله يعينك على مداخلاتي

البرنامج لم يعمل واعتقد ويتم الاغلاق  حيث اعمل على 2013

وبعيد عن البرنامج راح اعلق على الفكرة او بالادق الميجانيزم 

1. الفكرة تولدت لخطورة حذف الملف المرفق وهنا الفكرة جعلت الملف المرفق اهم من ملف القاعدة وهذا غير منطقي ! باختصار لو تم حذف ملف القاعدة لذهبت وذهب البرنامج المحمل بل بحذف السجل الحامل للبرنامج >>> كذا حذف البرنامج !!!

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

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

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

 

5. حاولت دبل كليك على الملف من الجدول مباشرة ولم تفتح معي ! هل هنا به مشكلة ام المفروض طبيعي تفتح زيها زي اي ملف ole ؟

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

اخيرا موضوع تشكر عليه وبالتوفيق

 

هلا والله بأخوي رمهان ، سواء كنت مشغول او فاضي حبتين :rol:

 انا اعمل على اوفيس 2010 وشغال عندي البرنامج ، فما عندي فكرة ليش ما اشتغل على 2013 ، وبما ان البرنامج قديم من 2009 ، فما اردت ان احوله الى صيغة الاكسس الجديدة ، وتركته بصيغة mdb لتعم الفائدة ، ولك نسخة مرفقة بصيغة accdb :rol:

 

1. هي مجموعة اسباب جعلتني اقوم بهذه الطريقة :rol:

انا ارفقت زبدة البرنامج ، ولم ارفق صلاحيات المستخدمين ، فلا يملك صلاحية الوصول الى نموذج ادخال Blob إلا اشخاص معينين ، لذا فلا يوجد تخوف من حذف السجل ،

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

اما اذا البرنامج ، والشبكة كانوا في يد المستخدمين/المخربين ، فعلى كل البرنامج وبرامج الكمبيوتر السلام :rol:

2. حجم حقل OLE هو 1 جيجا ، ولا ادري عن حجم اكبر حجم لـ Blob :rol:

3. اذا تمعنت في قاعدة البيانات ، ستجد ان هناك وحدات نمطية لمجلدات الكمبيوتر الاساسية ، ومنها المجلد المؤقت ، وقد كنت استعمل هذا المجلد للعمل ، ولم يكن هناك مشكلة ، ولم يخبرني برنامج المضاد للفيروسات KasperSky بشئ :rol:

4. لا وانت الصادق ، هذا كان جزء من احد برنامجي لأحد الجهات الحكومية ، وللعلم وبسبب عدم دراستي/تخصصي للكمبيوتر ، فكل اللي تعلمته كان عملي ، وكل اللي اطرحه في المنتدى هي ممارسات عملية في برامجي ، والمواضيع اللي لست لم اعمل فيها ، فلن ترى لي رد لها :rol:

5. الـ Blob ليس كأي عنصر OLE ، لهذا السبب ، تستورده للجدول بكود ، وتصدره للكمبيوتر بكود :rol:

لا تنسى اني عملت البرنامج هذا في 2009 ، وعملته داخل صيغة mdb ، والسبب اني عملته بهذه الطريقة ، هو بحثي في الانترنت ، وقرأتي عن ميزات وعيوب الطرق المختلفة ،

فنعم ، قد يكون كلامك صحيحا عن كائن stream ، ولكن لا علم لي به :rol:

 

وشكرا على هذه الاستفسارات ، حتى تعم الفائدة :rol:

 

جعفر

Blob_accdb.zip

  • Like 1
  • Thanks 1
رابط هذا التعليق
شارك

2 ساعات مضت, jjafferr said:

وشكرا على هذه الاستفسارات ، حتى تعم الفائدة :rol:

جعفر

العفو ! بدينا من الاخير !:smile:

2 ساعات مضت, jjafferr said:

4. لا وانت الصادق ، هذا كان جزء من احد برنامجي لأحد الجهات الحكومية ، وللعلم وبسبب عدم دراستي/تخصصي للكمبيوتر ، فكل اللي تعلمته كان عملي ، وكل اللي اطرحه في المنتدى هي ممارسات عملية في برامجي ، والمواضيع اللي لست لم اعمل فيها ، فلن ترى لي رد لها :rol:

انا كنت اقصد المبرمج الاجنبي وليس انت اخوي جعفر ! كنت اقصد كاتب الموديولات والاكواد الطويلة !

ويشهد الله لم اكن اقصد ان اصفك بالهاوي حاشى لله ! فانت محترف في نظري !

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

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

وهنا مثال ميكروسوفت لمعت نفسها واسمت المقال بالتعامل مع blob  وهو في التطبيق العملي لقراة الملفات صغيرة الحجم وتخزينها وبشرط لا يتعدى 1 جيجا حسب حجم الملف مع العلم انه عند تخزين الملف في ole ياخذ حجما اكبر  من حجمه على الهارديسك !

https://support.microsoft.com/ar-sa/kb/103257

 

نعود استاذ جعفر للمشاركة الاولى ولدي طلب :

لم استوعب كاملا ان اخزن ملف اكسس كبيانات ثنائية ثم خلال زر انشره في مكان اخر ! اعطنا الفوائد ؟

وساعود لا حقا في موضوع الفيروسات !

 

تقبل تحياتي

  • Like 1
رابط هذا التعليق
شارك

أخي رمهان :rol:

 

إحنا نستخدم أكسس ، ونحاول نطوّعه لما نريد ، وخاصية حمل برامج في الاكسس عن طريق Blob لا يعرف عنها الكثير :rol:

الجميع يتفق معاك ان الاكسس (احد برامج المايكروسوفت) ليس افضل برنامج ، ولكن هذا ليس مكان مناقشة هذا الموضوع :rol:

 

منذ ساعه, رمهان said:

لم استوعب كاملا ان اخزن ملف اكسس كبيانات ثنائية ثم خلال زر انشره في مكان اخر ! اعطنا الفوائد ؟

 

هنا شرحت السبب:

21 ساعات مضت, jjafferr said:

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

.

والآن الى شرح "فبدل ان اعمل هذه الجداول المؤقته داخل قاعدة بياناتي ، ويكبر حجمها ":

بعض الاوقات نضطر الى عمل جدول/جداول مؤقته داخل برنامجنا ، وعملها ، هو تخزين بيانات ، ثم حذفها ، بحيث ان الحاجة لهذه الجداول تنتهي بقفل البرنامج (غالبا) ،

وبهذه الطريقة يكبر حجم البرنامج ، لأن اكسس لا يُعيد حجم البرنامج الى اصله عند حذف السجلات ، وانما نضطر الى عمل ضغط واصلاح لأعادة البرنامج الى حجمه الاصل.

 

قبل حوالي اسبوعين ، واثناء التجارب على احد البرامج وكان حجم جزء الجداول BE حوالي 40MB ، عملت جدول مؤقت وبدأت اشتغل عليه بتجاربي ،

وعندما انتهيت ، حجم البرنامج وصل الى حوالي 750MB ، فطبعا استعملت زر الضغط والاصلاح ، ورجع الى حجمه الطبيعي :rol:

طيب لو اني كان عندي جدول مؤقت خارج برنامجي ، وعملت له رابط في برنامجي ، واشتغلت عليه ، ولما انتهي من عملي ، احذف الجدول المؤقت (طبعا مع قاعدة البيانات اللي الجدول فيها) ، مو يكون افضل لي ؟ او يعني الافضل ان اجعل الضغط والاصلاح تلقائي عند اغلاق البرنامج ؟

 

نعم استطيع ان اعمل هذا الجدول المؤقت الخارجي برمجيا ، ولا حاجة لإرفاقه ، ولكن في حالتي ، كنا شخصين نشتغل على هذا البرنامج ، وابن عمي كانت مسؤليته عمل الجداول المؤقته ، فلما خلص عمله ، ارفقت شغله بالكامل :rol:

 

 

جعفر

  • Like 1
رابط هذا التعليق
شارك

الأستاذ العزيز الغالي أ / جعفر 

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

في البداية أشكر لكم الردود الطيبة مع أنني أثقل عليكم جدا وأعلم أن ما تقدمونه تطوعا لأجل الله تعالى فقط . وأجد فيك معلما متألقا وأسارع بتطبيق كافة حلولك وبرامجك وهذا هو البرنامج الذي أعمل عليه  وقمت بالتطوير عليه متتبعا في ذلك الدروس التي تقدمها والبرامج التي تطرحها حتى يلبي احتياجاتي وذلك بجهد المخلصين من العملاقة في الأكسيس مثلكم  . للأهمية اسم المستخدم  1 والباس وارد 1 ولأنه كبير الحجم عن الإدراج في المرفقات وضع له رابط خاص https://dl.dropboxusercontent.com/u/61597795/hesabat.rar

ملحوظة ستجد برنامجك مسقط التقارير في داخل البرنامج على الموضع في الصورة المرفقة وشرف لي تواجده معي 56e06cb469620_.jpg.f1ed7bfc2a5130e4d304e

تم تعديل بواسطه omarahmed1424
  • Like 1
رابط هذا التعليق
شارك

49 دقائق مضت, omarahmed1424 said:

الأستاذ العزيز الغالي أ / جعفر 

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

في البداية أشكر لكم الردود الطيبة مع أنني أثقل عليكم جدا وأعلم أن ما تقدمونه تطوعا لأجل الله تعالى فقط . وأجد فيك معلما متألقا وأسارع بتطبيق كافة حلولك وبرامجك وهذا هو البرنامج الذي أعمل عليه  وقمت بالتطوير عليه متتبعا في ذلك الدروس التي تقدمها والبرامج التي تطرحها حتى يلبي احتياجاتي وذلك بجهد المخلصين من العملاقة في الأكسيس مثلكم  . للأهمية اسم المستخدم  1 والباس وارد 1 ولأنه كبير الحجم عن الإدراج في المرفقات وضع له رابط خاص https://dl.dropboxusercontent.com/u/61597795/hesabat.rar

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

 

وعليكم السلام أخي عمر :rol:

 

عمل جبّار ، مبارك عليك هذه الهمّه العالية :rol:

شاكرا لك ترك تسمية "مسقط التقارير" كما هو :rol:

 

بالنسبة الى برنامجك ، رجاء استيراد جميع الكائنات من برنامجي الى برنامجك ، بإستثناء الوحدتين النمطيتين:

API_FolderDialog

و

basOpenSaveDialog

لأنهم موجودين في برنامجك ، ولكن بمسميات مختلفة :rol:

وكُله تمام ان شاء الله :rol:

 

جعفر

  • Like 1
رابط هذا التعليق
شارك

منذ ساعه, jjafferr said:

طيب لو اني كان عندي جدول مؤقت خارج برنامجي ، وعملت له رابط في برنامجي ، واشتغلت عليه ،

جعفر

تمام بديت استوعب قليلا ! بس لو تكرمت 

1. ايضاح "وعملت له رابط في برنامجي" هل تقصد ربط جداول ام ماهو الربط المقصود

2. ايضاح " اشتغلت عليه" : اريد السيناريو الفعلي في برنامجك المذكور ! ماهو الشغل الذي اعمله خارجيا وكيف تعود النتائج الى القاعدة الحالية ؟

مشكور على سعة صدرك

رابط هذا التعليق
شارك

4 دقائق مضت, رمهان said:

تمام بديت استوعب قليلا ! بس لو تكرمت 

1. ايضاح "وعملت له رابط في برنامجي" هل تقصد ربط جداول ام ماهو الربط المقصود

2. ايضاح " اشتغلت عليه" : اريد السيناريو الفعلي في برنامجك المذكور ! ماهو الشغل الذي اعمله خارجيا وكيف تعود النتائج الى القاعدة الحالية ؟

مشكور على سعة صدرك

1. نعم ربط جداول (لا تنسى اني اتكلم عن جداول مؤقته) ، واعتقد بأني كنت اربطه برمجيا ، وذلك بسبب اختلاف مسار مجلد الكمبيوتر المؤقت من مستخدم الى آخر ،

2. البرنامج كاملا كان "لإدارة بلا ورق" ، فقد قمنا بعمل ارشفة ضوئية Scan لجميع الملفات و المراسلات والعقود السابقة ، وكانت هذه الجزئية (على ما اعتقد) لحساب عدد الملفات الممسوحة ضوئيا ، والتأكد من عدد صفحات كل ملف ، ثم ارساله الملفات واحدا بعد الاخر الى برنامج Abbyy FineReader والذي في اعتقادي بعد التجربة انه الافضل (العمل كان على ملفات باللغة الانجليزية ، ولكن الشركة عندها نسخة للنصوص العربية الآن) ، لتحويل الصور الى نص ، ومن ثم التأكد من ان عدد الصفحات هي نفسها ، وإلا فنرسل الملف الى مجلد آخر للتأكد والعمل عليه يدويا ، وينتهي عمل هذه الجداول :rol:

 

جعفر

  • Like 1
رابط هذا التعليق
شارك

4 دقائق مضت, jjafferr said:

1. نعم ربط جداول (لا تنسى اني اتكلم عن جداول مؤقته) ، واعتقد بأني كنت اربطه برمجيا ، وذلك بسبب اختلاف مسار مجلد الكمبيوتر المؤقت 

جعفر

تمام عليك

معناته انشر القاعدة والتي بها الجداول المؤقته والتي هي مخزنة كبيانات ثنائية والتي اصبحت قاعدة خارجية  ثم اعمل الربط برمجيا مع قاعدتي الحالية 

اذا صحيح فوصلت الفكره

مشكور

رابط هذا التعليق
شارك

47 دقائق مضت, jjafferr said:

1. نعم ربط جداول (لا تنسى اني اتكلم عن جداول مؤقته) ، واعتقد بأني كنت اربطه برمجيا ، وذلك بسبب اختلاف مسار مجلد الكمبيوتر المؤقت من مستخدم الى آخر ،

2. البرنامج كاملا كان "لإدارة بلا ورق" ، فقد قمنا بعمل ارشفة ضوئية Scan لجميع الملفات و المراسلات والعقود السابقة ، وكانت هذه الجزئية (على ما اعتقد) لحساب عدد الملفات الممسوحة ضوئيا ، والتأكد من عدد صفحات كل ملف ، ثم ارساله الملفات واحدا بعد الاخر الى برنامج Abbyy FineReader والذي في اعتقادي بعد التجربة انه الافضل (العمل كان على ملفات باللغة الانجليزية ، ولكن الشركة عندها نسخة للنصوص العربية الآن) ، لتحويل الصور الى نص ، ومن ثم التأكد من ان عدد الصفحات هي نفسها ، وإلا فنرسل الملف الى مجلد آخر للتأكد والعمل عليه يدويا ، وينتهي عمل هذه الجداول :rol:

 

جعفر

وانا بقول الاستاذ جعفر ليه في برامج الارشفة زي حالاتي بس طبعا انت الاستاذ وانا التلميذ :biggrin:

هل تقصد ببرنامجA bbyy FineReader 

هو خاصية ال OCR وهي خاصية موجودة الان في برامج تحويل الصور الي نصوص

لدي بعض التساؤلات بخصوص موضوعات معينة تخص الارشفة 

اذا سمحت لي اسالك فيها.. اكون متشكرليك جدا

وطبعا لا ننسي استاذ العزيز رمهان.. الغائب منذ فترة.. وما تعودنا علي غيابه.. 

تم تعديل بواسطه محمد سلامة
رابط هذا التعليق
شارك

نعم ، وقد كنت أحد الاشخاص الذين يرسلون لي اصداراتهم لتجربتها واعطيهم الملاحظات عليها :rol:

 

ولكني لا اعتقد بأن OCR العربي (لجميع الشركات) وصل مرحلة من الدقة التي اكون راض عنها (آخر تجربة لي لموضوع OCR العربي كان قبل سنتين تقريبا) :rol:

 

جعفر

  • Like 1
رابط هذا التعليق
شارك

8 ساعات مضت, jjafferr said:

وعليكم السلام أخي عمر :rol:

عمل جبّار ، مبارك عليك هذه الهمّه العالية :rol:شاكرا لك ترك تسمية "مسقط التقارير" كما هو :rol:

بالنسبة الى برنامجك ، رجاء استيراد جميع الكائنات من برنامجي الى برنامجك ، بإستثناء الوحدتين النمطيتين:

API_FolderDialog

و

basOpenSaveDialog

لأنهم موجودين في برنامجك ، ولكن بمسميات مختلفة :rol:

وكُله تمام ان شاء الله :rol:

 

جعفر

الاستاذ الغالي أ /جعفر 

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

أولا أشكر وأقدر لكم سرعة ردكم على استفساري وهذا من شيم الكرام .

ثانيا أشكر  لكم التشجيع منكم لجهدي المتواضع جدا في التعلم منكم ومن عمالقة المنتدى ليخرج عملي بما وصفتموه وهو أقل من ذلك بكثير .

ثالثا تم تنفيذ ما أشرتم به وبالفعل عمل برنامجكم بكل كفاءة ولكم الشكر والتقدير وننتظر المزيد من إبداعكم . 

رابط هذا التعليق
شارك

ماشاء الله عليك يا أ / جعفر 

شاهد بنفسك نتيجة عملك ( كل الملفات التي أحتاجها في ملف واحد ) تم وضع تبويب على البرنامج باسم الأرشيف وتم وضع زر لحذف المرفق غير المهم فتح الله عليك وجزاكم الله خيرا .

 

 

بدون عنوان.jpg

تم تعديل بواسطه omarahmed1424
تعديل الصورة المرفقة
  • Like 1
رابط هذا التعليق
شارك

7 ساعات مضت, omarahmed1424 said:

ماشاء الله عليك يا أ / جعفر 

شاهد بنفسك نتيجة عملك ( كل الملفات التي أحتاجها في ملف واحد ) تم وضع تبويب على البرنامج باسم الأرشيف وتم وضع زر لحذف المرفق غير المهم فتح الله عليك وجزاكم الله خيرا .

 

الحمدلله :rol:

( كل الملفات التي أحتاجها في ملف واحد )!!

ممكن تشرح هذه المعلومة لوسمحت ، نحب نستفيد منها :rol:

 

لاحظت ان حجم برنامجك كبير ، ولما تصفحته ، لقيت ان عندك صورة كثيرة ، ولكنك عامل ربط في الكود لكل صورة ، بس الغلطة اللي وقعت فيها هي انك في اعدادات الصورة في النموذج/التقرير جعلتها مضمنه ، فارتفع حجم قاعدة البيانات :blink:

 

اذا تسمح تعمل هذه الخطوات ، وان شاء الله العشاء بيكون على حسابك ، لأن حجم قاعدة البيانات اصبح عندي 20% (19MB) من حجمه الاصل :rol:

 

اعمل نسخة من برنامجك ، واشتغل على النسخة.

 

اتبع خطوات الصورة:

317.Clipboard01.jpg.952caa2b38b9a32cee6d

.

1. اعمل وحدة نمطية جديدة ، والصق فيها هذا الكود:



Function Convert_img_Embed_to_Link()

 
    Dim frm As AccessObject
    Dim rpt As AccessObject
    Dim dbs As Object
    Dim frm1 As Access.Form
    Dim rpt1 As Access.Report
    Dim ctl As Access.Control
    
    Set dbs = Application.CurrentProject
    
    For Each frm In dbs.AllForms
        Debug.Print frm.name

        DoCmd.OpenForm frm.name, acDesign
        Set frm1 = Forms(frm.name)

        For Each ctl In frm1.Controls
            If ctl.ControlType = acImage Then
               ctl.PictureType = 1
            End If
        Next ctl

        DoCmd.Close acForm, frm.name, acSaveYes
    Next frm
    

    For Each rpt In dbs.AllReports
        Debug.Print rpt.name

        DoCmd.OpenReport rpt.name, acDesign
        Set rpt1 = Reports(rpt.name)
        
        For Each ctl In rpt1.Controls
            If ctl.ControlType = acImage Then
               ctl.PictureType = 1
            End If
        Next ctl

        DoCmd.Close acReport, rpt.name, acSaveYes
    Next rpt
    
    
End Function

.

2. افتح النافذة الصغيرة اللي في اسفل الكود ، واللي ممكن تعطينا نتائج مباشرة من الكود ،

3. تأكد ان لغة الكيبورد بالانجليزي ، ثم اطبع: علامة استفهام ، واسم الوحدة النمطية (بدون مسافة وبدون اقواس) ، مثل الصورة ، وهو امر بأن يشغل الوحدة النمطية:

?Convert_img_Embed_to_Link

.

الكود سيفتح كل نموذج وكل تقرير (وسترى هذا في نافذة البرنامج)  في وضع التصميم ، ثم سيبحث عن كل كائن صورة ، ويغيره من "مضمن الى ربط" ، ويحفظ النموذج/التقرير ،

ورجاء لا تعمل شئ الى ان ينتهي كل شئ ، وذلك عندما يتم اغلاق جميع النماذج والتقارير المفتوحة :rol:

عندها اعمل ضغط واصلاح ، وشوف حجم قاعدة بياناتك الجديدة :rol:

 

جعفر

  • Like 2
  • Thanks 1
رابط هذا التعليق
شارك

1 ساعه مضت, سعيد صواب said:

بارك الله في جهودك استاذ جعفر

لا تتوقف عن المساعدة حتى لو لم تسأل

:rol:

 

حياك الله أخوي سعيد :rol:

 

انا اعرف موضوع الصور ومدى تأثيره في حجم البرنامج ، واعرف كذلك وللأسف الشديد صعوبة تنزيل حجم قاعدة البيانات اللي فيها صور :rol:

 

وبعدين في شغله واجد مهمة انت ما انتبهت لها ، تذكر لما أخوي عمر قال:

9 ساعات مضت, omarahmed1424 said:

كل الملفات التي أحتاجها في ملف واحد

فلازم اسوي مكان في برنامجه حق المرفقات الجديدة :rol:

 

جعفر

  • Like 1
رابط هذا التعليق
شارك

أستاذي العزيز أ / جعفر 

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

أولا : أعتذر عن التأخر في الرد فقد كنت على سفر ولم أتابع المنتدى خلاله .

ثانيا : أشكر لك كرمك الفائض في موضوع تصغير حجم البرنامج وهذا الأمر كنت أبحث عنه بشدة ولو أنني لم أطبق ما ذكرته لي إلا أنني أشكرك بشدة عليه فتح الله عليك من العلم ما تساعد به الغير.

ثالثا : بالنسبة لجملة كل ما أحتاجه من ملفات في ملف واحد فأقصد أنني دوما أحمل فلاش ميموري أضطر يوميا لتحديث الملفات المرفقة في البرنامج الآن عليها لكن الآن صارت جميعا ملف واحد يمكن ضغطه وحده وإرساله بالبريد أو عبر مواقع الرفع أو على نفس الفلاش دون نسيان أي من الملفات المرفقة . 

رابعا : الآن سأجرب وأوافيكم بالنتيجة .

رابط هذا التعليق
شارك

أستاذي العزيز أ / جعفر 

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

تم تنفيذ الوحدة النمطية كما تكرمت وأشرت علي والغريب أن حجم البرنامج بالفعل تغير للربع وذلك بعد الضغط والإصلاح إلا  أنه لم يعد هناك أثر لصورة الشعار في الفورمات لكنها موجودة في التقارير مع أنها في الاثنين صارت مرتبطة كما يتضح لكم من الصور فما الحل ؟

التقاط.JPG

التقاط1.JPG

تم تعديل بواسطه omarahmed1424
رابط هذا التعليق
شارك

وعليكم السلام:smile:

 

انت عندك 3 صور تستعملها في برنامجك ، واحدة منها موجودة في مجلد البرنامج ، ولكن الصورتين الباقيتين ما موجودات.

 

الصور الثلاث لازم يكونوا في مجلد البرنامج ، وأخبرنا النتيجة :smile:

 

جعفر

رابط هذا التعليق
شارك

الأستاذ العزيز الغالي أ / جعفر 

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

كانت المشكلة أنني كنت قد أوقفت حدث كود عند الفتح وقد فعلته ووضعت فيه الكود التالي 

Private Sub Form_Open(Cancel As Integer)
Me.IMAGE1.Picture = CurrentProject.Path & "\SCHOOL.jpg"
Me.IMAGE2.Picture = CurrentProject.Path & "\SCHOOL.jpg"
End Sub

مع مراعاة تسمية الصور الموجودة في الفورم وعمل الكود بكفاءة 

وإليكم الصورة ولكن هل كان من الممكن عمل وحدة نمطية تضع كود عند الفتح في كافة النماذج بدلا من وضع الحدث في كل نموذج يدويا ولك الشكر على الرد سريعا ومازلت في شوق لمسقط التقارير ( مجرد طاقة إيجابية فقط على سبيل الدفع الإيجابي هههههههههههه )

333.JPG

  • Like 1
رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • اضف...

Important Information