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

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

قام بنشر

السلام عليكم

بمناسبة هذه الايام المباركة ، حبيت اشارك بهذه الجزئية المستقطعة من احد برامجي 🙂

 

في بعض الاحيان ما يقدر المبرمج من سد جميع ثغرات البرنامج لمنع المستخدم من عمل خطأ في ادخال البيانات ، فتكون نفس المعلومة مكتوبة بعدة طرق ، مثلا:

image.png.050b594af30526c35ad0cbef289cbb87.png  

.

ومثال من جدول آخر 

image.png.216dabfeb6c99bdf0620cba5a9021497.png

.

عادة يُطلب من المبرمج تنظيف هذه البيانات ، جدول جدول / حقل حقل / معلومة معلومة ، والمشكلة في هذا العمل هو معرفة الحقول المطلوب تنظيفها ، ثم معرفة البيانات الخطأ والبيانات الصحيحة (لإستبدالها) ، وهذا العمل يتطلب وجود المبرمج والمستخدم لمعرفته بالبيانات الخطأ والصحيحة.

وبعد هذا التنظيف ، وبعد مرور مدة ، يجب تكرار العملية :biggrin:

طبيعتي ، لما اشوف فيه تكرار لعمل معين ، اقوم ببرمجته ، وهذا اللي حصل في هذا المشروع 🙂

 

الان المستخدم (طبعا المسؤول) هو الذي يقوم بهذا العمل من خلال نموذج.

انت محتاج الى نقل هذه الكائنات الى قاعدة بياناتك للقيام بالعمل ، ثم تشغيل النموذج frm_Clean_Data 

image.png.a4012c7805dd281a28473c4ffc562543.png

.

1. عند دخول النموذج ، تجد اسماء جميع الجداول في حقل اسم الجدول ، وبعد ان تختار اسم الجدول ، تجد اسماء جميع حقول الجدول في حقل اسم الحقل ، ثم تختار الحقل المطلوب تنظيف بياناته ، فتأتيك البيانات بدون تكرار .

image.png.734035bef0c9ae51df4d29ad3a0251e3.png

.

2. يجب عمل تصفية في اختيار "القيمة الحالية" للبيانات المطلوب تنظيفها ، وتختار "القيمة الجديدة" لها ،

image.png.0602213d2bde6a7ce917877a3294dfb9.png

.

3. ثم تنقر على زر "جميع الاسماء المختار" ، فتاتيك رسالة تأكيد لعملية التنظيف التي سيقوم بها البرنامج ،

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

image.png.d530e477378284dfeacf96bec08ee1bf.png

.

3. فنحصل على هذه النتيجة

image.png.2fa9884497d1fb2727efdab76b2ff6f3.png

.

4. ونستمر بإختيار القيمة التالية من هذا الحقل ، او اختيار جدول/حقل آخر ،

 

التغيير لقيمة الحقل كاملة وليست لجزء من الحقل

 

يجب اعطاء هذا البرنامج للمسؤول ، ويجب ان يعرف عواقب العمل ، وقبل كل شيئ يجب اخذ نسخة من قاعدة البيانات

 

 

 

 

Clean_Data.zip

  • Like 3
قام بنشر

عمل رائع وسأكون أول من يستخدمه فأنا أعاني من هذه المشكلة ولكن مع إختلاف بسيط فأنا غالبا ما أقوم بمطابقة البيانات بين نظامين واكون بحاجة لمطابقة القيم ليسهل الربط والمطابقة لذلك فلو أمكن إضافة خيار لنوع الإجراء هل سيتم على نفس الجدول أم مع جدول آخر فإذا كان الخيار نفس الجدول يتم العمل بنفس الآلية الحالية وإلا يتم تعبئة قائمة القيم القديمة من جدول وقائمة القيم الجديدة من جدول آخر بهذا الشكل

Untitled.jpg.dda4a099da9f9e82897539d59f2ea1ae.jpg

ليتم تحديث الجدول على اليسار ببيانات الجدول على اليمين

ولكن قد يتطلب هذا التعديل إضافة بعض الضوابط مثل التأكد من تطابق نوع البيانات للحقلين ولكن فكما قد وضحت في كلامك

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

يجب اعطاء هذا البرنامج للمسؤول ، ويجب ان يعرف عواقب العمل ، وقبل كل شيئ يجب اخذ نسخة من قاعدة البيانات

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

تحياتي

  • Like 1
قام بنشر

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

وهكذا عينا لما تشارك الفكرة مع الخبراء 🙂

 

طيب سؤال:

كلما اردت استعمال هذه الاداء على بيانات قاعدة بيانات ، اضطر الى نسخ الكائنات اليها !!

ليش ما اعمل برنامج خارجي مستقل بهذه الكائنات ، كما عملته في التعامل مع ملفات الاكسل:

 

.

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

image.png.20d1c8c3b499676194d79b36ca236189.png

قام بنشر

سلمت يمناك عمنا العزيز @jjafferr 🙂🌼

 

طبعا وبما أنك قلت :

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

 وبعد فترة ستجد افكار جديدة تنقلك الى النسخة التالية ، والتالية ... 🙂

خطر في بالي أفكار وملاحظة ..

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

image.png.d530e477378284dfeacf96bec08ee1bf.png

أما الأفكار فهي كالتالي :

1- بالنسبة لخيار أن تكون الأداة مستقلة عن قاعدة البيانات .. فيخطر في بالي خيار أن يستورد الملف وبشكل مؤقت جداول القاعدة المستهدف كجداول مرتبطة ليسهل التعامل معها ..

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

image.png.4d0dc52a0debe3e67c9f0fdcbd57e150.png

2- الفكرة الثانية : بما أن المستخدم هو اللي راح يتعامل معا الجداول فأقترح أن تظهر القوائم المنسدلة أسماء الجداول بطريقة صديقة للمستخدم بحيث تكون القائمة لها عمودين [ الاسم البرمجي للجدول  | والأسم البديل بالعربي (مثلا) ] ويتم التعامل برمجيا مع العمود الأول 🙂  .. ويمكن الاستفادة من خاصية Description الموجودة في خصائص الجدول لإعطاء الجدول اسم مفهوم ويمكن استدعؤه لاحقا من الخاصية لتعبئة القائمة ..
image.png.bd389ab79cea38ae79e40ee89a8c34e1.png
 

وسلامتك 🙂:fff:

 

قام بنشر (معدل)
2 ساعات مضت, jjafferr said:

ليش ما اعمل برنامج خارجي مستقل بهذه الكائنات

صراحة أنا فكرتي كانت أبسط وهي أن يقوم المستخدم بإنشاء إرتباط مع الجداول المطلوبة فقط ولكن قد تكون فكرتك أكثر شمولية

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

ما ادري ليش حسيت بقشعريرة و شعر جسمي كله وقف :blink:

ليش مافي شي يستاهل 😅 إذا أنت أصلاً قمت بما هو أصعب وهو مثال الاكسل المذكور ولا أعتقد أن العمل مع أكسس سيكون أصعب

بعد أن قمت بإضافة المشاركة فوجئت بأن الأستاذ @Moosak قام بالرد وكانت فكرته ترجمة للفكرة التي ذكرتها وهي ربط الجداول المطلوبة فقط وياريت يشاركنا الأداة التي ذكرها

تم تعديل بواسطه منتصر الانسي

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

يجب ان تكون عضوا لدينا لتتمكن من التعليق

انشئ حساب جديد

سجل حسابك الجديد لدينا في الموقع بمنتهي السهوله .

سجل حساب جديد

تسجيل دخول

هل تمتلك حساب بالفعل ؟ سجل دخولك من هنا.

سجل دخولك الان
  • تصفح هذا الموضوع مؤخراً   2 اعضاء متواجدين الان

×
×
  • اضف...

Important Information