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

ashraf

المشرفين السابقين
  • Posts

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

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

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

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

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

    والله الموفق .

    أشرف خليل

  2. أولا : شكرا لتجاوب الجميع وتعدد وتنوع الأفكار ليستفيد منها الجميع .

    ثانيا : أرفق مثال لتعم الفائدة .

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

    عموما بارك الله فى الجميع .

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

    أشرف خليل

    db1.rar

  3. forms ! [ menu].visible = false

    بعد إذن الجميع .

    يمكن وضع هذا الكود عند حدث عند الفتح للتقرير فسوف يقوم بإخفاء النموذج خلف التقرير . مع تغيير اسم menu إلى اسم النموذج لديك .

    ملحوظة : أنا لا أفضل أن نقوم بإغلاق النموذج حيث أحيانا يكون التقريريعتمد على معايير بالنموذج وفى تلك الحالة لن يفتح التقرير . مثال ذلك قد يكون فى النموذج من تاريخ إلى تاريخ وفى تلك الحالة لن تقدر تغلق النموذج .

    أشرف خليل

  4. اتبع ما يلي :

    1- قم بإنشاء وحدة نمطية وضع فيها الكود التالى :

    CODEFunction DeleteAll()
       Dim dbs As DAO.Database
       Dim i As Integer
       Set dbs = CurrentDb
    
       ' Loop backwards through relations
       For i = dbs.Relations.Count - 1 To 0 Step -1
           dbs.Relations.Delete dbs.Relations(i).Name
       Next i
    
       ' Loop backwards through tabledefs
       For i = dbs.TableDefs.Count - 1 To 0 Step -1
           If Left(dbs.TableDefs(i).Name, 4) <> "MSys" Then
               dbs.TableDefs.Delete dbs.TableDefs(i).Name
           End If
       Next i
    
       Set dbs = Nothing
    End Function
    2- ضع زر فى نموذج جديد وفى حدث عند النقر ضع ما يلي :
    CODE=DeleteAll()

    وهي من منشء التعبيرللدالة المذكوره أعلاه .

    جرب وشوف النتيجة . ستجد إن شاء الله الجداول كلها تم حذفها .

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

  6. لم يضتح لى السؤال بالضبط ولكن هذه فكرة .

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

  7. 1- نفرض أنه لديك زر طباعة أو عرض للفواتير على نموذج الفواتير نفسه . ويحتوى على الكود التالى :

    Dim stDocName As String
       stDocName = "R_inv_edit"
        DoCmd.OpenReport stDocName, acNormal
    على اعتبار أن اسم التقرير هو R_inv_edit 2- هذا التقرير مبنى على استعلام أو على جملة Sql وأسفل معيار رقم الفاتورة تضع المعيار التالى مع تغيير ما يليزم بالنسبة لمسميات النموذج لديك .
    [forms]![fsales_edit]![inv_id]

    حيث fsales_edit اسم النموذج الذي يحتوى على الفواتير .

    حيث inv_id اسم حقل رقم الفاتورة .

    وعند تنفيذ الزر السابق فإنه سوف يظهر تقرير الفاتورة حسب الرقم الظاهر أمامك .

    أشرف خليل

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

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

    4Column_last.zip

  9. الأخ العزيز ( أبو نعيم )

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

    وبارك الله فيك مرة أخرى .

    أشرف خليل

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

     If (Eval("DLookUp(""[id] "",""[tbl_data]"",""[id]=form![id]"") Is Not Null")) Then
    
      MsgBox "تم تسجيل هــذا الرقــم  من قبــــل .... !!!!" & vbCrLf _
    & "واسمه : " & DLookup("name", "tbl_data", "[id]=" & Forms![frm_data]![id]), vbExclamation, "رقم عميل مكرر "
    
            DoCmd.CancelEvent
        
        SendKeys "{f2}", False
      End If

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

    يمكنك ذلك بوضع أنت أي رسالة أخرى أو تجعل من خصائص القائمة عدم الالتزام بالقائمة .

    أو ضع الكود التالى

    On error resum next

  12. أولا : السلام عليكم ورحمة الله وبركاته

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

    ثالثاً : أعتذر عن الانقطاع الطويل لأسباب ليس لها مجال الآن .

    رابعا : مطلوب فكرة أو أفكار لنقطة فى برنامج الحج وتتلخص فى التالى :

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

    المطلوب ما يلى : يتم توزيع هؤلاء الحجاج توزيع آلي بواسطة البرنامج على مقاعد الباص . ولكن بشكل معين وهو أن يكون الرجال فى الأمام والحريم فى الخلف وأيضاً أن يكون الرجال محارم الحريم .

    توضيح أكثر : أشرف محرم لزوجته وأخته مثلا ومعهم ابن .

    المطلوب : أن يكون مقعد اشرف مثلا رقم 1 بالباص الابن مقعده رقم 2 الحريم تأخذ الأولى رقم 50 بالباص والثانية 49 وهكذا بالنسبة للعائلة الثانية على حسب العدد لها يتم التوزيع وليس شرط أن يكون 50 بالضبط على حسب المقاعد يمكن أن يكون 46 أو 48 حسب المتوفر من العائلات .

    لعلي أكون وضحت المطلوب بالشرح ومن خلال المشاورت قد نصل لحل أمثل .

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

    أشرف خليل

×
×
  • اضف...

Important Information