اختي الفاضلة
اقتباسشكرا اختي العزيزه زهرةبس عفوا عندي سوالين
اول شي بعنى لو تقوليلي كيف فصلتي العامودين يكون احسن علشان استفيد ويستفيد الكل إن شاء الله ما تكون هيدي المعلومه ايضا من ضمن سر المهنة
لانو إن شاء الله لو ربي رزقني وعرفت سر تحويل اللغه لازم اعرف كيف افصل العامود الى اثنين ( بصراحه الجداول كثيره للغايه)
ثاني شي كيف عرفتي انو اسم العامود الثالث هو nof
لانو بالفعل هذا هو اسمه الحقيقي
ارجو الاجابة على الاسئله
وإن شاء الله ما تكون هيدي المعلومه من بين الاسرار الممنوع انشارها في هذا المنتدي
والله اني جلست اضحك من كلامك ومن التعبير العفوي الخارج من قلب ابيض صافي
شوفي يا نور عيني المسألة لا فيها اسرار ولا هم يحزنون كل ما في الموضوع انه كان عندك ملفات سابقة بصيغة dbf قد قمت بتحميلها وقمت بمعالجتها حتى ظهرت كما في الملف الاول السابق وهو ALL ولم انتبه او قد يكون نسيان مني اني تجاهلت احد الحقول وهو NOF لأنه اثناء التحويل ظهر لي الحقل REC به سته ارقام لهذا تجاهلت الحقل NOF ولكن بعد ان تطرقتي للموضوع ورغبتي في فصل الارقام عن بعضها بحيث تكون اول اربعة ارقام من اليسار هي في حقل REC والرقمين الاخيرين يكونان في حقل اخر اعدت معالجة الملف بوضع الحقل الجديد NOF وهو موجود مسبقا ولم اخترع شيء جديد .
وطريقة فصل الارقام عن بعضها سهلة فإن رغبتي في تعلمها فهذه هي الخطوات بالتفصيل الممل :
1. ننشيء استعلام جديد ونضع به الجدول المطلوب ( سهله والأ ايه رأيك ) وليكن اسم الاستعلام مثلا qry2
2. نضع جميع حقول الجدول في شبكة الاستعلام ومن ضمنها الحقل REC ( طبعا هذا الحقل مكون من 6 ارقام )
3. نريد الان فصل الرقمين الاخيرين من الحقل REC ونضعها في حقل جديد وهو NOF وهي بالتأكيد ستبدأ من الرقم 13 كما هو في ملفك الاساسي قبل وبعد المعالجة .
اذا ننشىء حقل جديد كليا اسمه NOF ونضع به هذه العباره
NOF: Right$([REC];2)
لاحظي معي ان الرقم الموجود في حقل REC هو مثلا 120819 ونريد فصل 19 في حقل NOF انظري العبارة تجدين في اخرها العدد 2 للدلالة من جهة اليمين حسب الدالة $Right الآن انتهينا من الحقل NOF لهذا نقوم بحفظ الاستعلام بشكل عادي وليكن اسمه مثلا qry2 يعني الاستعلام ابو رقمين .
نقوم الان بإنشاء استعلام جديد وليكن اسمه مثلا NewTable مبني على الجدول السابق CL_STAF ونضع به العبارة السابقة الخاصة بإنشاء حقل الـ NOF ثم نقوم بتحويله الى استعلام انشاء جدول وليكن الجدول الجديد اسمه CL_STAF1 ولا نحاول تشغيله الان بل ندعه وشأنه ( لاحظي اننا انشأنا الجدول الجديد بالاستعلام وبه حقل جديد NOF )
لو نظرنا للجدول الجديد نجد ان به حقل اضافي هو NOF وبه رقمين ( الى هنا ماشين تمام )
( ننسى الان الجدول السابق CL_STAF لأنه لم يعد يهمنا وسوف نقوم بحذفه في النهاية )
نأتي للحقل REC في الجدول الجديد لا زالت به الارقام كما هي ( اي لازال 6 أرقام ) ونحن نريد فقط الاربعة الارقام التي على جهة اليسار اذا نقوم بعمل استعلام ثالث جديد وليكن اسمه مثلا qry4 يعني استعلام ابو اربعة ارقام وهذه المره نجعله استعلام تحديث ونضع به الجدول الجديد CL_STAF1 ثم تضع هذه العبارة في معايير تحديث الى للحقل REC
Left$([REC];4)
وتعني هذه العباره اننا نريد تحديث الستة ارقام الى اربعة ارقام فقط والرقمين الاخيرين نحذفهم لأننا وضعناهم سابقا في الحقل NOF
ملاحظة : يجب عدم تشغيل استعلام التحديث هذا فلم يأتي دوره بعد وسنشغله في النهاية .
الان اصبح لدينا ثلاث استعلامات ( الاول خاص بإنشاء حقل NOF في الجدول CL_STAF والثاني خاص بإنشاء جدول جديد CL_STAF1 والثالث بتحديث حقل الـ REC في الجدول الجديد CL_STAF1
الان نريد تشغيل الاستعلامات الثلاثة دفعة واحدة وبالترتيب ثم نقوم بحذف الجدول السابق CL_STAF و الاستعلامات كلها ثم نقوم بتغيير اسم الجدول الجديد من CL_STAF1 الى CL_STAF وهذا كله في زر امر واحد .
كيف الطريقة وانا اختك ؟؟؟ فكري معاي
لابد من انشاء نموذج ونضع به زر الامر هذا ونضع به كل الاكواد اللازمه لهذه العملية .
اذا الله لا يهينك شوفي النموذج وشوفي الاوامر التي تحت زر الأمر فهي مشروحه خطوة خطوة وبالعربي كمان .
ملاحظة : قبل لا تضغطي على زر الامر تأكدي اولا من الجدول CL_STAF انه فيه حقل الـ REC وبه 6 أرقام وبعد كذا شوفي الأكواد الموجوده تحت زر الأمر ثم قومي بالتنفيذ واخيرا انظري النتيجه بالتأكيد ستكون ( مرعبه ) آسفه اقصد رائعه
شايفه الموضوع وانا اختك قد ايه سهل عشان نفصل رقمين فقط من الجدول ونضعهم في حقل جديد ولا فيه اسرار ولا ممنوع
وهذا هو الملف جاهز


