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

*فورم* مثال لتعريب النماذج

مغلق
بدأه أبو هادي في 1 نوفمبر 2002 · 13 رد · 2,214 مشاهدة · في قسم الأرشيف و المواضيع المميزه
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

فكرة لتحويل النموذج بين العربي والإنجليزي غير مكتملة

http://mypage.ayna.com/abbashmd/Converter.zip

وحتى تعمل الفكرة بشكل صحيح لابد من إتباع التالي :

1 – المحاذاة لابد أن تكون Left أو Right وسوف يتم تجاهل ماعداهما .

2 – Control Tip Text لابد أن تعبأ بعكس لغة اسم الحقول أي لو كان أسم الحقل عربي سوف يكون الـ Control Tip Text بالإنجليزي .

3 – العمود الثاني والثالث في الـ Combo Box سوف يتم التبديل بينهما عليه يجب أن يكون أحدهما عربي والآخر إنجليزي لنفس المعلومة أي أسم الموظف أو اسم صنف الخ ..

4 - التاريخ بشكل مؤقت سوف يتعامل مع الشهر على شكل mm فقط .

5 – الأرقام يجب أن تحدد هندية أو عربية .

6 – الـ Scroll Bar Align للـ Combo Box يجب أن تكون Left أو Right .

ولقد حاولت مع Data Sheet لتحويلها ولكن لم أستطع إلا بفتح النموذج في وضعية التصميم والتعديل في الاتجاه ثم حفظ التعديل وهذا له مساوئه حيث لو تم الخروج في شكله العربي وتصميمه الأساسي بالإنجليزي فسوف يفتح من جديد على خلاف تصميمه .

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

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

تحياتي

#2

السلام عليكم

سؤال موجه إلى مشرفي المنتدى :

هل طرح هذا الموضوع من قبل ؟

هل الموضوع أقل من أن يقوَّم منكما ؟

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

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

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

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

آمل من الأخوة محمد طاهر وابوحمود الرد على استفساري هذا .

وتحياتي للجميع

#3

أخي أبو هادي :

أولا : كل عام وأنت بخير بمناسبة شهر رمضان .

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

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

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

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

عموما أخي العزيز لا أريد منك أن تلوم على أحد فلا تعرف ظروف الناس ما هي ...

وأخيرا كل عام وأنت بخير مرة أخرى .

أشرف خليل

#4

اهلا ابوهادي

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

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

http://arabteam2000.com/vb/showthread.php?...?threadid=14743

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

رابعا : ينبغي أن يكون حلمك اوسع من هذا ولو انتظرنا الفعل المطلوب من الغير وإذا لم يأتي بما نريد غضبنا لاستمر غضبنا على الدوام .

خامساً : أشكر لك مساهماتك في المنتدى التي لاتنقطع ولكن أوصيك بالرفق والحلم .

ولك تحياتي

#5

السلام عليكم

أخونا أبوهادي

لفت نظري فى مشاركتك ، أنه بما أننا قبلنا بمسؤلية الاشراف فيجب علينا التفاعل مع كل المواضيع

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

فحسب فهمي للاشراف أنه مهمة ادارية ، و ليت فنية

بالطبع يفضل أن يكون من يقبلها لديه معرفة كافيةو لكن الغرض تنظيمي ف المقال الاول

و اساس الرد هو التفاعل و تبادل المعرفة

فمن حققك أن تلومنا علي عدم التفاعل مع الموضوع كأخوة فى المنتدي و ليس كمشرفين

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

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

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

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

فهناك ما يتم توجيه الوقت له سواء برغبتنا أو بتوجيه من ادارة المنتدي من أعمال قد لا ترونها و نتمني أن ترون نتائجهاقريبا باذن الله

أنا عن نفسي هذه الايام مشغول فى اعداد بعض الاشياء التي جزء منها يخص المنتدي و سترونه قريبا باذن الله

و أخونا أبو حمود كما نري كل يوم موقعه يزداد معلومات مفيدة

و هذا ياخذ من وقته

و أنا أنزلت هذا المثال و فتحته و لكن لم أرد أن أرد قبل أن يتاح لي الوقت الكافي للتفاعل معه

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

و نرجو أن تلتمس للجميع الاعذار

فمثلا أنا شخصيا هذه الايام لا لأرد كثيرا ، و لا أشعر بالقلق لذلك فى ظل وجود أبو حمود و معه حوالي 6 من الاعضاء النشطين الذين مشكورين يقومون بالرد علي معظم الناس

أما أنت فأنت مش غريب ، و لم نتوقع أن تزعل ، و توقعت ان تلتمس لنا العذر من دزن أن نطلب ذلك

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

و الحالة الثانية قدتولي اهتمام اكثر فى رأيي

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

بالطبع من الاجمل و الافضل التفاعل الفوري مع كل شيء

و لكن أعتقد أن هذا الوضع قد بستمر الي نهاية شهر رمضان

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

و علي رأي أبو حمود حلمك شوية علينا (f)

فقد فانت من أهل الدار و ليت بغريب عنها ، و عليك أن تتحمل و يكون رد فعلك هو المزيد من المشاركة و التفاعل و لييس العكس ( كما أتمني(f) )

أما عن المثال فستجد باذن الله تفاعل معه قريبا (آمل ذلك ) ، فهو فعلا مهم ، و الحمد لله أن المجهود المبذول ليس مرتبطا بالعدد المتواجد هذه الفترة ، و لكن نسأل الله أن يبقي الي أن يشاء الله و يستفيد منه من لم يولدوا بعد كأجيال متعاقبة و ان شاء الله قريبا ستجدون تطورات كبيرة فى الموقع ستؤدي الي زيادة عدد المشاركين و الزوار باذن الله تعالي ، ان شاء الله و اكتملت كما هو مخطط لها

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

و ما يلي ليس بخصوص هذا الموضوع و ربما سأكرره فى موضوع منفصل لاحقا :

لنندب بيننا عادة متعارف عليها

أنه من يقرأ مثال لأحد و يجد فيه فائدة فليدعو له دعوة بظهر الغيب

و ليتخيل ذلك كل من يضع معلومة ، و هذا بالطبع لا يغني عن التفاعل

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

فما رأيكم فى هذا الاقتراح

مع تحياتي

#6

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

كل عام وانتم بخير ورمضان كريم

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

#7

كل عام والجميع بخير

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

علاقة الرد من المشرفين بوقف خاصية الرد للأعضاء لا أراها منطقية .

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

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

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

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

تقبل الله منك صيامكم وقيامكم .

#8

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

أسعدني ردك

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

و لكن لا أزعل ان لم تكن هناك مشاركة و أحاول التماس العذر للجميع و ذلك بالطبع مع تطلعي الي مشاركاتكم التي طالما استفدت منها

و قد فهمناغلط انك زعلان و عز علينا ذلك :(

و الحمد لله ان طلعنا فاهمين غلط (f)

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

و قريبا باذن الله يكون هناك جديد من جانبي أرجو أن يكون مفيدا ( أتمني أن أتسطيع تجهيزه قبل نهاية رمضان - لأنه الي حد ما عمل متعدد الأجزاء و أنا فى بداياته حاليا))

و نسأل الله أن يجعل جميع هذه الاعمال فى ميزان حسناتكم

#9

السلام عليكم

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

والرسول صلى الله عليه وسلم يقول :

[ إنما العلم بالتعلم ، والحلم بالتحلم، ومن يتحر الخير يعطه، ومن يتوق الشر يوقه ]

بالنسبة للبرنامج فقد انزلته على جهازي وفكرته ممتازة وأكثر من رائعة ، مجهود تشكر عليه

واقترح عليك ان يكون هناك شاشة مرتبطة بجول

فيها

1: اسم المستخم

2: ورقمه السري

3: الواجهة ( عربي / انجليزي )

بحيث كلما دخل اي مستخدم يجد ان لغة الواجه التي يريدها

مفعلة وجاهزة .

واذا اراد اي مستخدم ان يغير لغة الواجهه فيمكن ذلك .

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

وغفر الله لك ولوالديك

#10

للرفع

#11

الأخ أبا هادي

الفكرة رائعة وأنا أشجعك على المواصلة فهي مجال يمكن أن يبدع فيه المرء ويأتي بما لم يأت به الآخرون

ثمة تعليق بسبط على بعض ما قمت به

1- قولك :

اقتباس
ولقد حاولت مع Data Sheet لتحويلها ولكن لم أستطع إلا بفتح النموذج في وضعية التصميم والتعديل في الاتجاه ثم حفظ التعديل وهذا له مساوئه حيث لو تم الخروج في شكله العربي وتصميمه الأساسي بالإنجليزي فسوف يفتح من جديد على خلاف تصميمه .

المشكلة الأهم في ذلك هو أنه لا يمكن استخدام هذا الأمر في حالة حفظ القاعدة البيانات بامتداد mde

2- لي ملاحظة على طريقة استخدامك لـ if then المعششة في الكود لكني أوثر تأجيل الحديث عن ذلك إلى وقت لاحق

لاحظت أنك استخدمت خاصية ControlTipText لتخزين القيم وهذا خلاف المعتاد إذ المعتاد في أكسس استخدام خاصية علامة tag التي يمكن بها تخزين الكثير من القيم حتى حد 255 حرفاً ، آمل تجربة استخدام هذه الخاصية فهذا أدق في كتابة الكود

هذه بعض الملاحظات كتبتها على عجل

تحياتي ونحن بانتظار نسخ أحدث

#12

أخي العزيز .. بعد التحية :

فعلا أنا أعاني من عدم التركيز فلم أنتبه للـ mde وكذلك الـ tag وقد كنت أبحث عن بديل للـ ControlTipText ولم أجد .

عليه أرى أنه لا جدوى من مواصلة الموضوع للإستخدام أثناء الـ run ويمكن فقط تطويره بعد حذف بعض التعقيدات منه ليكون بمثابة أداة للمبرمج عندما يريد اختصار الوقت في عمل فورم رديف للغة المقابلة .

اقتباس
لي ملاحظة على طريقة استخدامك لـ if then المعششة في الكود

دق الحديد وهو حار .. لا تنتظر .. للأسف منذ أن اشتركت لم أتلقى توجيها مباشرا واحدا بخصوص البرمجة إذا ما خانتني الذاكرة .

تحياتي

#13

أخي الكريم

ما رأيك بالكود بهذا الشكل

  For Each Ctl In Me.Controls

    With Ctl

      If .ControlType <> acOptionGroup Then

        .Left = Me.Width - (.Left + .Width)

        '----------------------------------

        '----------------------------------

        Select Case .TextAlign

          Case 1: .TextAlign = 3

          Case 3: .TextAlign = 1

        End Select

        '----------------------------------

        Select Case .NumeralShapes

          Case 1: .NumeralShapes = 2

          Case 2: .NumeralShapes = 1

        End Select

        '----------------------------------

        Select Case .format

          Case "dd/mm/yy", "dd-mm-yy":     .format = "yy/mm/dd"

          Case "dd/mm/yyyy", "dd-mm-yyyy": .format = "yyyy/mm/dd"

          Case "yy/mm/dd", "yy-mm-dd":     .format = "dd/mm/yy"

          Case "yyyy/mm/dd", "yyyy-mm-dd": .format = "dd/mm/yyyy"

        End Select

        '----------------------------------

        Select Case .ControlType

        Case acComboBox

          .RowSource = NewSource(.RowSource)

          Select Case .ScrollBarAlign

            Case 1: .ScrollBarAlign = 2

            Case 2: .ScrollBarAlign = 1

          End Select

        Case acLabel Or acCommandButton

          TempCaption = .Caption

          .Caption = .ControlTipText

          .ControlTipText = TempCaption

        '----------------------------------

        Case acSubform

          FormName = .SourceObject

          .SourceObject = "TempForm"

          DoCmd.OpenForm FormName, acDesign, , , acFormPropertySettings

          Set Frm = Forms(FormName)

          Select Case Frm.Orientation

            Case 0: Frm.Orientation = 1

            Case 1: Frm.Orientation = 0

          End Select

          DoCmd.Close acForm, FormName, acSaveYes

          .SourceObject = FormName

          Set Frm = Nothing

        End Select

        '----------------------------------

      End If

    End With

  Next Ctl

هذا مجرد رأي أحتاج سماع رأيك فيه

#14

شكرا أخي أبو هاجر

بكل تأكيد أن ما اقترحته أنت هو الأفضل والحقيقة أنا أهتم كثيرا بتنظيم الأكواد وأحاول بقدر الإمكان تجنب استخدام جملة If وهذا مثال من برنامج التفقيط :

Select Case FracType

    Case 1, 2

      Select Case Lang

        Case vArabic:  Only = AOnly(Num_, FracS, Single_, Ploral_, Parts, Sex, Dec)

        Case vEnglish: Only = EOnly(Num_, FracS, Nz(Single_), Parts, Dec)

      End Select

    Case 3, 4

      Select Case Lang

        Case vArabic:  Only = AOnly(Num_, "", Single_, Ploral_, Parts, Sex, Dec)

                       If CDbl(Num_) = 0 And FracS <> "" Then Only = ""

                       If FracS <> "" Then Only = AddAnd(Only, FracS, "", "æ ", CByte(Lang))

        Case vEnglish: Only = EOnly(Num_, "", Nz(Single_), Parts, Dec)

                       If CDbl(Num_) = 0 And FracS <> "" Then Only = ""

                       If FracS <> "" Then Only = AddAnd(Only, FracS, "", " and", CByte(Lang))

      End Select

  End Select

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

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

شكرا أخي مرة أخرى وآمل أن لا تتردد أبدا في ابداء ملاحظاتك تجاه مشاركاتي على الأقل وتجاه المشاركات الأخرى المفيدة بشكل عام .

تحياتي

هذا الموضوع مغلق.

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