اذهب الي المحتوي
أوفيسنا

اظهار الصورة الاخرى لنفس الرقم الوظيفي المكرر


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

الاساتذة الافاضل خبراء منتدى الاكسس

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

لدي برنامج شئون الموظفين بالاكسس ولكن واجهتني مشكلة في اظهار الصورة للموظفين المتشابهين في الارقام الوظيفية (مثال ) احمد علي رقمه الوظيفي 2222 ودرجته الوظيفية الاولى و الموظف جاسم عبدالله ورقمه الوظيفي 2222 ودرجته الوظيفية الثالثة ) في الوقت الحالي وعند البحث بالرقم الوظيفي تظهر بيانات الموضفان بالتتالي ولكن بنفس الصورة

للعلم ان كود الصورة كا التالي

Private Sub Form_Current()

On Error GoTo ERRPIC

Me.MYPIC.Picture = Trim("C:\PHOTOS\s") + Trim(Me.الرقم) + Trim(".jpg")

Exit_FORM_CURRENT:

Exit Sub

ERRPIC:

Me.MYPIC.Picture = ""

End Sub


فهل يمكن التعديل على هذا الكود بحيث يكون بامكانه اظهار الصورة للموظف الاخر رغم تشابه الارقام الوظيفية.

اساتذتي الافاضل

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

اسف على الاطالة وان شاء الله اكون وفقت بايصال المعلومة

واسف مرة اخرى على عدم ارفاق ملف بسبب كبر حجمة.

ابو احمد

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

اولاً اسألك سؤال

كيف ستضع صورتين بنفس الإسم ونفس الإمتداد في ملف واحد...؟

فبحسب الكود يتم إستدعاء الصورة التي اسمها مطابق للرقم (باضافة s) وامتدادها jpg فكيف سيكون صورتين لهما نفس الاسم والامتداد في ملف PHOTOS ...؟

وبالإجابة على هذا السؤال يمكن عمل التعديل

تحياتي,,,

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

الاستاذ الفاضل منصر الانسي

تحية طيبة

هذا هو السوال الذي يحتاج الى الاجابة

حيث اني قمت بعمل الاتي

تسميت الصورة للموظف من الدرجة الاولى باضافة حرف N الى المسمى الاصلي ليصبح اسم الصورة (ٍٍSN2222) ولكن المشكلة التي واجهتني انني عند تغيير صيغةخانة الاسم في جدول البيانات الى نص بدل رقم واجهتني مشكلة اخرى وهي ان كل الفورمات المرتبطة بهذا الكشف لا تعمل وتظهر رسالة خطا تبين انه لا يمكن فتح الفورم.

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

اخي العزيز

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

لذا فمن الأفضل إعادة التصميم بجعل رقم الموظف فريد لايتكرر تحت أي ظرف مهما كان هذا الحل صعب ولكنه في الأخير هو الأفضل

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

- ضرورة تعديل عنوان الصورة الخاصة به

- ستواجه مشكلة اخرى اذا ماتصادف رقم مكرر لشخصين في نفس الدرجة

في الأخير وحتى لا أطيل عليك سألخص إقتراحي في :

- كما قلت لك فالأفضل هو إعادة النظر في تصميم القاعدة (أو على الأقل في طريقة ترقيم الموظفين)

- أو إضافة حقل خاص لهذا الغرض يتم فيه وضع رقم فريد لكل موظف ويتم الربط بموجبه

- الحل الاخير (والغير مستحسن) تعديل الكود بحسب رغبتك ولكن بعد توضيح اكثر لحقول بيانات الموظف للتوصل الى توليفة يمكن من خلالها ان يتفرد كل موظف برمز خاص وتعديل الكود بناء على ذلك (ولكن ذلك سيتطلب منك تعديل عنوان صورة الموظف بعد تعديل اي عنصر من عناصر التوليفة هذه)

تحياتي,,,

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

الاستاذ الفاضل منتصر الانسي

شكراً جزيلا على الرد

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

استاذي الفاضل لنفترض بان لدي درجتان وظيفيتان هي الاولى والثانية (بغظ النظر عن تشعبات كل درجة)

فان بيانات الموظف ستكون كالتالي

1. الدرجة الوظيفية

2. الرقم الوظيفي

3. الاسم

4. الجنسية

5.الرقم الشخصي

. العمر

7. تاريخ الانضمام الى العمل

8 مدة الخدمة في الشركة

9. وهكذا

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

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

في هذه الحالة يمكن ان يصبح الكود كما يلي

Private Sub Form_Current()

On Error GoTo ERRPIC

Me.MYPIC.Picture = Trim("C:\PHOTOS\") & Format(Me.الدرجة,"00") & Trim(Me.الرقم) & Trim(".jpg")

Exit_FORM_CURRENT:

Exit Sub

ERRPIC:

Me.MYPIC.Picture = ""

End Sub

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

وهذا يتطلب

اولاً ان تكون قيمة حقل الدرجة رقما أي (1 و 2 ....) وليس (الأولى - الثانية.....)

ثانياً تعديل عناوين الصور كذلك فمثلا الموظف الذي برقم 2222 وفي الدرجة الأولى سيكون عنوان صورته 012222 والذي في الدرجة الثالثة سيكون 032222

ارجو ان يكون التعديل واضحا ومفيداً

تحياتي,,,

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

الاستاذ الفاضل منتصر الانسي

الظاهر انه لا يوجد حل فلا بد ان يكون اسم الدرجة بالحروف وليس بالارقام

اسف على الاطاله

ولكن ان كان هناك حل اخر يتضمن الاتي

ان يبقى كود الصورة كما هو ولكن يضاف اليه شرط استخراج الصورة الاخرى والتي سيضاف الى المسمى الخاص بها رمز N اي بمعنى اصح ان الموضف من الدرجة الاولى سيكون مسمى صورته في ملف الصور S2222 بينما الموظف من الدرجة الثانية سيكون مسمى صورته SN2222 اي ان الكود اذا صادف اثنا البحث رقمين متشابهين يستخرجفي الحالة الاولى الصورة S2222 وفي الحالة الثانية الصورة SN2222 دون تغيير مسميات الحقول الخاصة بالفورم

استاذي الفاضل منتصر الانسي ان اسف لكثرة تشعبي في هذا الموضوع واتمنى ان اكون وفقت في ايصال الفكرة فان امكن كان بها ولا فلا حول ولا قوة الا بالله.. ولك في الاول والاخير عظيم الشكر والامتنان

اخوك في الله ابو احمد

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

شكراً الاستاذ الفاضل على تجاوبك وبث الامل من جديد

الدرجات ستكون درجتان وظيفيتان هي الاولى والثانية

وسيكون تشعب الاولى بهذه الطريقة

1. الدرجة الاولى "أ"

2. الدرجة الاولى "ب"

3. الدرجة الاولى "جـ"

4. الدرجة الاولى "د"

5. الدرجة الاولى "هـ"

6. الدرجة الاولى "و"

7. الدرجة الاولى "ز"

والدرجة الثانية وستكون

1. الدرجة الثانية"حـ"

2. الدرجة الثانية"ط"

3. الدرجة الثانية"ي"

4. الدرجة الثانية"ك"

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

آخر سؤال ان شاء الله

ماهو النص الذي يكون في مربع النص هل هو (الأولى أ) ام ان كلمة (الأولى) تأتي في حقل و (أ) تأتي في حقل آخر ...؟

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

تحياتي,,,

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

الاستاذ الفاضل منتصر الانسي

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

اما بخصوص الدرجة فستكون الاولى/أ وهكذا

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

قمت بوضع حل أرجو أن ينجح

اولاً قم بإستيراد الجدول الذي في المثال المرفق الى قاعدة بياناتك

وهذا الجدول يقوم بعملية تقدر تقول عليها وساطة بين شكل البيانات عندك والشكل الذي اريده فستلاحظ ان الدرجة (الأولى/أ) يقابلها (11) وهكذا لذا يرجى التأكد من أن طريقة كتابة الدرجات هي كما وردت في الجدول

ثانيا قم بإعادة تسمية الصور بإضافة الرقم المقابل للدرجة في الجدول مثال الرقم 2222 اذا كان في الدرجة الأولى/أ سيكون عنوان الصورة 11222 وهكذا

ثالثاُ قم بتعديل الكود ليكون كما يلي

Private Sub Form_Current()

On Error GoTo ERRPIC

Dim MyDgree as String


MyDgree=Dlookup("DegreeTo","tblDegreesConv","DegreeFrom=Form!الدرجة")


Me.MYPIC.Picture = Trim("C:\PHOTOS\") & MyDgree & Trim(Me.الرقم) & Trim(".jpg")

Exit_FORM_CURRENT:

Exit Sub

ERRPIC:

Me.MYPIC.Picture = ""

End Sub
مع تعديل إسم الحقل (الدرجة) كما هو في برنامجك بالضبط وذلك في السطر
MyDgree=Dlookup("DegreeTo","tblDegreesConv","DegreeFrom=Form!الدرجة")

ارجو ان يكون الشرح واضح ... جرب واخبرني حيث لم اقوم بتجربته

تحياتي,,,

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

الله يصيب الارهاق

باين اني نسيت ارفاق الملف

المعذرة

الاستاذ الفاضل منتصر الانسي

الله يبارك فيك تم اجراء التعديلات التي عملتها على الملف وكانت النتيجة 100 /100

شكراً جزيلا

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

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.

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

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information