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

شايب

03 عضو مميز
  • Posts

    304
  • تاريخ الانضمام

  • تاريخ اخر زياره

  • Days Won

    2

مشاركات المكتوبه بواسطه شايب

  1. 6 ساعات مضت, ابو جودي said:

    قلت فى نفسى لا لابد من المرور والقاء السلام

    وعليكم السلام ورحمة الله اخي محمد

    6 ساعات مضت, ابو جودي said:

    ولكن ان اردنا العمل اكثر احترافية ومرونة من خلال الاكواد فى وحدة نمطية انظر المرفق

    عمل رائع ومتميز وغير مستغرب من استاذنا الفاضل @ابو جودي الذي تعلمنا ومازلنا نتعلم منه الكثير 🌹

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

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

    اضافة الى ان كتابة كلمة المرور في محرر الاكواد يجعل امكانية معرفتها اكثر سهولة حتى لو تم تحويل القاعدة الى ACCDE

    انظر هنا ⬇️ 

    اقتباس

     

    مداخلات اخونا الشايب تمثل رأي غير ملزم وليس الهدف منها انتقاد عمل الاخرين

    لذا نقول لمن يمر خذ او اترك

    • Like 3
  2. 23 ساعات مضت, عبد اللطيف سلوم said:

    هناك مشكلة

     

    11 ساعات مضت, Foksh said:

    فعلا الكود يعمل على نظام 32 بكفاءة ، لكن على نظام 64 فلا يعمل عند إضافة الجزء Ptrsafe

     

    11 ساعات مضت, Ahmos said:

    تفضل أخي الكريم
    الملف المعدل يعمل علي النواتين 32x and 64x
    بالتوفيق

    السلام عليكم

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

    long
    
     الى 
    
    LongLong
    
    او  الى 
    LongPtr

    وسوف يعمل البرنامج ويختصر عدة اسطر من الكود

    اخير LongPtr ليس نوع بيانات حقيقي وانما يتوافق مع الاصدرين 32 و 64 بحيث يتحول الى long مع 32 و longlong مع 64

     

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

    ولكن نكتفي بهذه المشاركة

    اخونا الشايب

     

    رقم سري.accdb

    • Like 2
  3. 4 ساعات مضت, الحلبي said:

    اين جدول اسماء المستخدمين وما اسمه لكى يتضح لى اسماء المستخدمين جمعيا وكلمة السر لهم 

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

    علما بان اخونا الفاضل شايب سبق ان نبه لمثل هذه الثغرات في مشاركات سابقة

    -------------

    الاخ شايب لا يتصيد الاخطأ ولا يقصد الاساءة لاحد وانما يحاول المساعدة والتنبية قدر المستطاع

     

     

    يزيد1.gif

  4. منذ ساعه, jjafferr said:

    وهنا بيت القصيد في المعادلة التي طرحتها ، فهي معادلة واحدة تفي للأحتمالين 🙂

    ربما اخذ الموضوع اكبر مما يستحق

    ولكن "" لا تعني ان الحقل فارع وانما يحتوي سلسلة ذات طول صفري

    ولتاكيد ذلك نغير خصائص الحقل الى السماح بطول صفري = لا

    عندها لو اردنا استخدام ⬇️

    في 6‏/4‏/2024 at 14:21, jjafferr said:
    Me.Txt_Search = ""
    او
    Me.Txt_Search = Null
    او
    Me.Txt_Search = Empty

    فسوف نحصل على رسالة خطأ في "" وكذلك empty

    اما الخيار الاوسط null فسوف يعمل

    اخونا الشايب

    • Like 1
  5. 4 ساعات مضت, jjafferr said:

    فالنقاش اعلاه يخلط بينهم

    :wallbash:

     

    4 ساعات مضت, jjafferr said:
    وبدلا عن استعمال مجموعة اوامر لمعرفة اذا الحقل 
    به معلومة
    او Null
    او ""
    او Empty
    
    استعمل سطر واحد
    if len(me.txt & "")=0 then

    صحيح يعطي نتيجة صحيحة

    ولكن احيانا نرغب في عد الاحرف بدون استخدام الشرط

    لذا ⬇️

    15 ساعات مضت, شايب said:

    الحقيقة ان الاولى يعدها اكسس 0

    اما البقية فلا يعدها اكسس ونحتاج عند عد احرف الحقل الى استخدام nz حتى لا نحصل على رسالة خطأ

    اخونا الشايب

  6. 50 دقائق مضت, Eng.Qassim said:

    سؤال مهم وربما يسبب مشاكل في بعض الاحيان

    يا هلا استاذ قاسم وكل عام وانتم بخير

    وسوف احمل المرفق

    34 دقائق مضت, Foksh said:

    يا رب ما أكون صعبتها بدل ما أسهلها 🤣

    يا هلا استاذنا وكل عام وانتم بخير

    الحقيقة ان الاولى يعدها اكسس 0

    اما البقية فلا يعدها اكسس ونحتاج عند عد احرف الحقل الى استخدام nz حتى لا نحصل على رسالة خطأ

    الحقيقة ان ⬇️

    3 ساعات مضت, شايب said:

    السؤال كيف ينظر اكسس الي كل منهم

    مجرد تفكير بصوت مرتفع

    ومع ذلك اعتز بمداخلتكما

    اخونا الشايب

    • Like 2
  7. 9 ساعات مضت, jjafferr said:

    هذا كود تفريغ حقل البحث، اذا كان النقر على زر البحث:

    ماشاء الله استاذنا

    السؤال كيف ينظر اكسس الي كل منهم

    من تجربة بسيط وجدت ان "" لا يعتبر الاكسس ان الحقل فارغ

    بينما null و empty يكون الحقل فارغ فعلا

    ويتضح ذلك ايضا عند محاولة عدد الحروف لكل من الثلاث خيارات

    اخونا الشايب

  8. 10 دقائق مضت, aliwindows said:

    شكرا لك استاذا  العزيز احاول اعمل شي على طريقتك واذا ما صار شي  ننتظر الاساتذة 

    الان قمت بتجربة الطريقة على قاعدة تحتوي 11700 سجل

    ومبنية بشكل متوافق مع متطلبات بناء قواعد البانات ولم اواجة اي مشكله

    • Like 1
  9. 18 دقائق مضت, aliwindows said:

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

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

    الحقيقة من الطبيعي ان يحصل عدم استجابة عند زيادة عدد السجلات

    مع ذلك نترك الامر للاساتذة

    اخونا الشايب

    • Like 1
  10. 23 دقائق مضت, aliwindows said:

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

    بدون الحاجة لاكواد غير مصدر البيانات للتقرير الرئيسي الى استعلام يساوي

    SELECT معلومات_1.[اسم الاب], معلومات_1.[رقم الهاتف], معلومات_1.العنوان
    FROM معلومات, معلومات AS معلومات_1 INNER JOIN الابناء ON معلومات_1.[اسم الاب] = الابناء.[اسم الاب]
    GROUP BY معلومات_1.[اسم الاب], معلومات_1.[رقم الهاتف], معلومات_1.العنوان;

    الملف مرفق

     

    1(2).accdb

    • Like 1
  11. 18 دقائق مضت, ابوخليل said:

    كن الوجهة في هذه المرة بحاجة الى اعادة نظر :wink2:

    العلاقات  ليس لها ارتباط ملزم بالمفتاح .. فالمفتاح يخص الجدول ..

    يكفي ان يكون حقل الرأس مفهرس وغير قابل للتكرار 

    نعم استاذي اتفق معك

    ولكن الامر يتطلب بعض التعديلات والاحتياطات وخصوصا اننا لم نطلع على مرفق

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

    مثلا اذا كان لدينا مفتاح اساس باسم x من نوع رقم مثلا وكان يمثل راس العلاقة

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

    واما الاحتياطات في عدم التعديل قبل مراجعة العلاقات والحقول

    وتبقى وجهة نظر طالما لم نطلع على الرنامج

    • Like 1
  12. منذ ساعه, Zooro1 said:

    يعني ممكن ازود حقل في كل جدول ، حقل ترقيم تلقائيا ويكون primary key؟

     

    9 دقائق مضت, ابوخليل said:

    نعم هذا هو الصحيح

    اتفق مع استاذنا

    ولكن ليس بشكل مطلق فاذا كان لديك مفتاح اساسي في بعض الجداول

    ولديك علاقات معرفة مسبقا

    حينها ستواجه مشاكل من نوع اخر

    وجهة نظر

  13. 21 ساعات مضت, jo_2010 said:

    ممكن مثال لكلام حضرتك لتعم الفائدة ونكون قد تعلمنا نوعين من الطرق

    الحقيقة اني سبق ان شاهدت هذه الطريقة في احد البرامج

    ولكن الاخ شايب مبتدئ وليس لديه الخبرة الكافية لكتابة الاكواد

    من قال لا اعلم فقد افتى

    تحياتي

    • Sad 1
  14. في 23‏/3‏/2024 at 19:54, kkhalifa1960 said:

    تفضل أستاذ @2saad محاولتي حسب مافهمت . تم عمل استعلام تجميعي للجداول (Data1,Data2,Data3) وهو (Query1) .

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

    مع ذلك في بعض الحالات لا نرغب في زيادة كائنات القاعدة باضافة استعلام توحيد واستعلام انشاء جدول كما فعل الاستاذ خليفة

    ونرغب في عمل ذلك بالكود عن طريق مصدر السجلات

    الكود المقترح في زر امر

    Dim rs As DAO.Recordset
    Dim rst As DAO.Recordset
    Dim a As Integer
    Dim fld As DAO.Field
    Dim strSQL As String
    strSQL = "SELECT Data1.* from data1 Union SELECT Data2.* from data2 UNION SELECT Data3.* from data3;"
    Set rs = CurrentDb.OpenRecordset(strSQL)
    Set rst = CurrentDb.OpenRecordset("data")
    rs.MoveFirst
    For a = 0 To rs.RecordCount - 1
    rst.AddNew
       For Each fld In rs.Fields
       If fld.Name <> "م" Then
        rst.Fields(fld.Name) = fld.Value
        End If
    Next fld
    rst.Update
    rs.MoveNext
    Next a
    rs.Close: rst.Close
    Set rs = Nothing: Set rst = Nothing

    اخونا الشايب

    • Like 1
  15. 10 ساعات مضت, محمد سعيد رشاد said:

    من سنتين عملت علاقه اطراق اطراف بين  الحقلين السابقين ال autonumber

    اخونا شايب يعتقد ان عمل علاقة اطراف باطراف يتطلب وجود جدول ثالث يكون بمثابة الوصل بين الجداول

    وبالتالي علاقة اطراف باطراف في حقيقتها هي علاقتي راس باطراف وراس باطراف

     

×
×
  • اضف...

Important Information