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

إنشاء مجلدات للأرشيف

بدأه رحيّم في 12 يناير 2012 · 4 رد · 647 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

أشكركم جميعاً على ما تقدموه لنا من معلومات قيمة وأمثلة رائعة :::

أساتذتي وإخواني :

بدأت في إنشاء برنامج وارد وصادر ( ولدي فكرة خاصة عن سير عمله ) وأردت أن يقوم البرنامج بإنشاء مجلدات على مسار القاعدة ( أولاً السنة : من جدول info ) ثم الأقسام الرئيسية ( dep ) ثم الفرعية ( subdep ) ... عملت حدث عند الخروج من مربع نص السنة في فورم معلومات النظام ... وهو شغال .. وكذلك في الأقسام الرئيسية والأقسام الفرعية ...

المشكلة :

عند عدم وجود المجلد الأب للقسم الفرعي .. أو عند عدم وجود المجلد الرئيسي ( السنة ) تظهر رسالة خطأ ...

المطلوب :

1) تجاوز رسالة الخطأ هذه ...

2) قمت بإنشاء زر أمر في الشاشة الرئيسية للبرنامج ليقوم بالتأكد وعمل المجلدات ... ولكنه يعمل المجلدات لأول سجل فقط ... ( كيف يمكن أن يعمل المجلدات كاملة ... أعني ينشئ مجلد لكل قسم رئيسي وبداخله مجلدات فرعية للأقسام الفرعية التي تنتمي إليه ) ...

archivnew.rar

#2

باقي 3 ساعات ويقفل الموضوع ..!!!!!!

#3

بالنسبة للمطلوب الاول

الخطأ يحدث عند محاولة انشاء مجلد داخل مسار غير موجود

لذلك يمكنك ان تتأكد من المسار بالتدريج أى ان تتأكد من وجود السنة ثم الأقسام الرئيسية ( dep ) ثم الفرعية ( subdep )

و هناك حل أسهل عن طريق احدى دوال API التى تؤدى ذلك مباشرة و تتأكد من المسار و اذا لم يكن موجود تقوم بانشاءه

و أنا أفضل الحل الاخير

و لتطبيقه ضع هذه الدالة فى وحدة نمطية

Private Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" (ByVal lpPath As String) As Boolean

Public Sub CreateFullPath(fldrpath As String)
On Error GoTo my_err
MakeSureDirectoryPathExists fldrpath   
Exit Sub
my_err: MsgBox "Error " & Err.Number & vbLf & Err.Description, 64
End Sub

يعد ذلك تحتاج الى تعديل بسيط فى النماذج الثلاثة

استبدل هذا السطر

fso.CreateFolder (GetImageFolder)

يهذا السطر

CreateFullPath GetImageFolder

أما بخصوص المطلوب الثانى

حيث أن المسار مرتبط بالعام

فالامر يتطلب اضافة حقل للعام الى جدول القسم

أو ربط جدول القسم مع جدول المعلومات

و يتم عمل استعلام يجمع الجدولين القسم و القسم الفرعى

ثم يتم المرور على سجلات ذلك الاستعلام

تم تعديل هذه المشاركة بواسطة Abo_Yossof في 17 يناير 2012 في 05:32

1

مدونتى:-

احترف الأكسس مع أبو يوسف

متغيب حاليا لانشغالى الشديد

#4

جزاك الله خيراً أخي على ما تكرمت وساعدت كثيراً ...

ولي بعض الملاحظات والطلبات ... إن شاء الله تساعدني فيها ..

Abo_Yossof كتب:

بالنسبة للمطلوب الاول الخطأ يحدث عند محاولة انشاء مجلد داخل مسار غير موجود لذلك يمكنك ان تتأكد من المسار بالتدريج أى ان تتأكد من وجود السنة ثم الأقسام الرئيسية ( dep ) ثم الفرعية ( subdep )و هناك حل أسهل عن طريق احدى دوال API التى تؤدى ذلك مباشرة و تتأكد من المسار و اذا لم يكن موجود تقوم بانشاءهو أنا أفضل الحل الاخير و لتطبيقه ضع هذه الدالة فى وحدة نمطية

Private Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" (ByVal lpPath As String) As BooleanPublic Sub CreateFullPath(fldrpath As String)On Error GoTo my_errMakeSureDirectoryPathExists fldrpath   Exit Submy_err: MsgBox "Error " & Err.Number & vbLf & Err.Description, 64End Sub

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

fso.CreateFolder (GetImageFolder)

يهذا السطر

CreateFullPath GetImageFolder

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

لأنني عندما أستبدله يتأكد من وجود المجلد الأب وينشئه إن لم يكن موجوداً ... ولكن لا ينشئ المجلد الفرعي ... مثلاً كنت في الأقسام الفرعية عند الفرع رقم 11 في القسم رقم 2 .. ينشئ المجلد 2 داخل المجلد 1433 ولكن لا ينشئ المجلد 11 داخل المجلد 2 ... وكذلك لا ينشئ مجلد السنة لو كنت في فورم البيانات الأساسية ...

فجزاك الله خير الجزاء ....

Abo_Yossof كتب:

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

هذه لم أفهمها جيداً ... فهل يمكن أن توضحها أكثر ؟؟؟

وخصوصاً النقطة الأخيرة :::: " ثم يتم المرور على سجلات ذلك الاستعلام " كيف ذلك ؟؟؟

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

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

#5

معذرة مشرفنا الغالي ....

نسيت أن اسأل عن شيء جديد .. وهو :

عند تقسيم قاعدة البيانات لتعمل على الشبكة ... فماهي الطريقة لمعرفة مسار المجلد الذي فيه قاعدة الجداول ... لينشئ المجلدات بها فقط .. ولا ينشئ المجلدات في كل جهاز ؟؟؟

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