حصان طروادة في المفتاح الفريد - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : تمارين دلفي وحلول (https://delphi4arab.net/forum/forumdisplay.php?fid=16) +--- الموضوع : حصان طروادة في المفتاح الفريد (/showthread.php?tid=11744) |
حصان طروادة في المفتاح الفريد - Delphi4Us - 05-01-2022 السلام عليكم ورحمة الله في برنامج مبيعات له فاتورة رأس وجسم حيث الراس فيها رقم الفاتورة والتاريخ والمستخدم والمورد وما الى ذلك والجسم فيها البضاعة وما يلحقها اذا اردت ان تجلب بيانات البضاعة مع راس الفاتورة ستحتاج اى الاتصال بالجدولين واذا اردت معهم اسم المورد ايضا ثلاث جداول المهم وانا اجرب فكرت لماذا لا يكون الرقم الفريد لجدول راس الفاتورة هو عبارة عن محتوى الفاتورة نفسها الفكرة بالمثال بالصورة مثلا هذا الرقم 0000131008202109 اول خمس ارقام محجوزة لرقم الفاتورة 00001 الرقم السادس 3 يمثل نوع الفاتورة او الحركة بعدها تاريخ الفاتورة 10082021 = 10-08-2021 بعدها رقم المورد 09 وطبعا باجراء بسيط يمكن تفكيك الرقم واخراج محتواه وهكذا هناك الكثير من المعلومات تكون قريبة منك اذا احتجتها مجرد فكرة عابرة اردت مشاركتكم اياها RE: حصان طروادة في المفتاح الفريد - wadoud - 05-01-2022 (05-01-2022, 12:48 PM)Delphi4Us كتب : السلام عليكم ورحمة الله السلام عليكم السؤال هل يخزن هذا الرقم ؟ إذا كان الجواب نعم لزم إنشاء جدول جديد لنسميه "الحركة "مثلا ويكون الرقم هو المفتاح وإذا كان الجواب لا فإنه لا لزوم له لأنه على كل حال يمكن الوصول الى المعلومات المرغوب فيها بدون إشغال قاعدة البيانات بمزيد من البيانات.و توفير الفضاء . والله اعلم RE: حصان طروادة في المفتاح الفريد - Delphi4Us - 05-01-2022 الرقم لازال يقبل حتى سبعة ارقام اخرى بالتجربة في مثال الفواتير كما قلت الحقل الفريد لجدول رأس الفاتورة سيكون مرتبط بحقل الفهرس بجدول الحركة RE: حصان طروادة في المفتاح الفريد - wadoud - 05-01-2022 (05-01-2022, 08:18 PM)Delphi4Us كتب : الرقم لازال يقبل حتى سبعة ارقام اخرى بالتجربة أراه عملا متقنا ،شكرا وفقكم الله. RE: حصان طروادة في المفتاح الفريد - Delphi4Us - 05-01-2022 مع ملاحظة ان الحقل الفريد في العادة يستخدم من النوع INTEGER ويحجز 4 بايت اما الرقم هذا فيستخدم النوع BIGINTEGER او INT64 ويحجز 8 بايت RE: حصان طروادة في المفتاح الفريد - Delphi4Us - 26-05-2022 السلام عليكم لكسر العادة والمألوف ومن باب التغيير والتجربة جربت طريقة اخرى لتصميم قاعدة بيانات المبيعات طبعا كالعادة التقليل من عدد الجداول و انشاء استعلامات قصيرة واسرع في التنفيذ الفكرة كانت مجنونة ولكن عملت بسلاسة وكانت برمجة الواجهة والتقارير ممتعة وبسيطة لا يوجد جدول لرأس الفاتورة كله جدول واحد للمشتريات والمبيعات في الاستعلامات كان قصير جدا واسهل في اجراء العمليات الحسابية واسرع في التنفيذ هنا لدينا فاتورة متكاملة BYE-DATE تاريخ الفاتورة طبعا تسجله مرة واحدة فقط لاداعي لتكراره بعده رقم اصنف وبعده سعر الشراء او البيع وبعده كمية الشراء لو كانت مشتريات وبعده كمية البيع لو كانت مبيعات وبعده رقم الفاتورة وايضا بعده تاريخ الصلاحية لو كانت مشتريات وبعده رقم نوع الفاتورة وهنا 9 اي مبيعات وبعده رقم المستخدم وبعده المدفوع وهو اجمالي الفاتورة ويجب ان يكون في اول السطر فقط لان هذا سيسهل فيما بعد الاستعلامات لانك لو جمعت باستعلام وكان امدفوع 100 ستكون النتيجة 300 وتحتاج الى انقاصه من عدد الصفوف واجراء عملية في الاستعلام ونحن نحتاج الى اقل وابسط استعلامات وبعدها التخفيظ في اول اسطر تخفيظ على كامل الفاتورة ولو بعده على الصنف الحدد فقط طبعا تحتاج الى بعض الضبط فقط عند جلب فاتورة للتعديل في برنامجك لتقراء القيم في السطر الاول وبعدها فكرة تستحق التجربة لانها جعلتني استمتع في التصميم |