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

ابو جودي

أوفيسنا
  • Posts

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

  • Days Won

    207

كل منشورات العضو ابو جودي

  1. هههههههههه ما هى دى بركات مولانا ههههههههههه والبخور العمانى والدى الحبيب واستاذى الجليل ومعلمى القدير الاستاذ @ابوخليل ابشر طالما معنا الله ثم مولانا ان شاء الله وأخيــــــرا الان جاء دورى من نفسي بقه يا مولانا : يضاف للمكتبة العامرة
  2. فؤش تقدر تجربها على اوفيس 2010 32 بت ؟ هو عنده اوفيس 10 32 بت وبيقول كل القواعد شغاله الا دى انا عملت المرفق الاخير ده قاعده جديده استوردت كل شئ من القديمه اليها اضفت كلمة مرور للحماية من الانتى فايروس عطلت كل الاكواد اللى بها مشاكل وحولت اى شئ بس لتفادى مشاكل الانويه لان للاسف انا 64 بت القاعده تعمل معى بدون مشاكل ولكن هو نفس المشكله واللى هيجننى ما فى اى اكواد اوتو اكسيك ولا نموذج بدايه القاعده بمجرد الفتح بتظهر رسالة انه سوف يحذف الاكواد الحل الاخير اللى عندى تفعيل الاوفيس لانه غير مفعل المشكله ما عنده انترنت وما قدرت افوت انى ديسك ارسلت له فى رسائل واتس التفعيل لعله يكون السبب ولنا لقاء يوم الاحد القادم لنكمل
  3. جرب هذه القاعده للعلم فقط القاعده مجرد لتجربة مشاكل الفتح والتأكد من وجود الاكواد تحويل الاكواد غير صحيح ولم ولن اهتم بالتصحيح الان عطلت الكثير من الاكواد نظرا لعدم وجود عناصرها فى النماذج لذا معظم الاكواد لن تكون صحيحة تمام القاعده فقط لتجرب مشكلة حذف الاكواد من عدم حذفها 2025.zip
  4. الحمد لله الذى تتم بنعمته الصالحات
  5. المرفق الاخير يقوم بذلك test_05.mdb
  6. الصورة دى مش من المرفق الاخيـــر صح ؟
  7. استخدم الجملة دى افضل مع عدد السجلات الضخمه تكون اسرع نظرا لعدم وجود استعلامات فرعيه SELECT t1.* FROM test AS t1 INNER JOIN ( SELECT [رقم الزبون], [إسم المادة], [حجم المادة] FROM test GROUP BY [رقم الزبون], [إسم المادة], [حجم المادة] HAVING COUNT(*) > 1 AND MAX([تاريخ الفاتورة]) >= DateAdd("m", -3, MIN([تاريخ الفاتورة])) ) AS t2 ON t1.[رقم الزبون] = t2.[رقم الزبون] AND t1.[إسم المادة] = t2.[إسم المادة] AND t1.[حجم المادة] = t2.[حجم المادة]; روح لـ Create > Query Design في SQL View الصق الكود أعلاه المرفق test_05.mdb
  8. استخدم الكود التالى كجملة استعلام عن طريق Count ولا تزعل نفسك يا سيدى انت تأمر SELECT t1.* FROM test AS t1 WHERE ((((SELECT Count(*) FROM test AS t2 WHERE t2.[رقم الزبون] = t1.[رقم الزبون] AND t2.[إسم المادة] = t1.[إسم المادة] AND t2.[حجم المادة] = t1.[حجم المادة] AND DateValue(t2.[تاريخ الفاتورة]) >= DateAdd("m", -3, DateValue(t1.[تاريخ الفاتورة])) AND DateValue(t2.[تاريخ الفاتورة]) <= DateValue(t1.[تاريخ الفاتورة]) ))>1));
  9. لا افهم ماذا تريد تحديدا هل السؤال : الاجابه لا جديد ولا تعديل على الكود فالسطر : AND t2.[تاريخ الفاتورة] >= DateAdd("m", -3, t1.[تاريخ الفاتورة]); يحتوى على >= ولو كان هذا سؤال أخر منفصل بذاته عن موضوع تكرار تاريخ الفاتورة مرتين نفس اليوم نعم هو تماما كما قمت أنت الان بإضافة شرط حجم المادة الى الشروط ولكن النتيجه التى سوف تحصل عليها من الاستعلام هى التى يتوافر فيها كل هذه الشروط مجتمعين معا لذلك تأكد من الشروط بشكل صحيح بتمعن وتأن شديدين فسوف يتم الفرز والتصفيه للبيانات بعد توافر كل هذه الشروط مجتمعين معا طيب اذا كان التاريخ متضمنا وقت لنتلافى ههذ المشكلة تكون جملة الاستعلام بالشكل التالى من خلال : DateValue SELECT t1.* FROM test AS t1 WHERE EXISTS ( SELECT 1 FROM test AS t2 WHERE t2.[رقم الزبون] = t1.[رقم الزبون] AND t2.[إسم المادة] = t1.[إسم المادة] AND DateValue(t2.[تاريخ الفاتورة]) >= DateAdd("m", -3, DateValue(t1.[تاريخ الفاتورة])) AND DateValue(t2.[تاريخ الفاتورة]) <= DateValue(t1.[تاريخ الفاتورة]) AND t2.[تاريخ الفاتورة] <> t1.[تاريخ الفاتورة] );
  10. هذا استعلام مركب الاستعلام الاساسى الذى يمثل الجدول ككل هو : وتتم عملية التسمية المؤقته كما شرحتها لك سابقا من خلال : AS t1 SELECT t1.*FROM test AS t1 ; واضفت بداخله ستعلام فرعى وبه جمله شرطيه SELECT 1 FROM test AS t2 WHERE t2.[رقم الزبون] = t1.[رقم الزبون] AND t2.[إسم المادة] = t1.[إسم المادة] AND t2.[تاريخ الفاتورة] < t1.[تاريخ الفاتورة] AND t2.[تاريخ الفاتورة] >= DateAdd("m", -3, t1.[تاريخ الفاتورة]); وطبعا فى الاستعلام الغرعى والخاص بجملة الشرط استخدمت التسمية المؤقته : AS t2 كما تقدم فى الشرح السابق سبب استخدام تسميات مختلفى لنفس الجدول
  11. تحديث المرفق التحديث الجديد يحتوى على عدم الاعتماد على وسيط بانشاء ملف فى مسار محدد لتمرير اومر الاعدادات ثم حذفه بعد تمرريرها وتطبيقها وتم ذلك فى الداله : LoadInstalledKeyboards فى النموذج : frmLanguageFormatSetting ملاحظة هامة احيانا يتم اضافة تخطيط لغات بشكل وهمى لاعدادت الويندوز فى شريط المهام بجوار الساعه فقط عند فتح احد قواعد البيانات من خلال فتح النموذج : frmLanguageFormatSetting قم باختيار نفس التخطيط للبلد وعدد المفاتيح الذى تم اضافته فى تخطيط لغات لوحات المفاتيح فى شريط المهام من خلال مربع التحرير والسرد الخاص بـ اختيار : لغة اعداد النظام ومن خلال مربع التحرير والسرد الخاص بـ نوع لوحة المفاتيح وطبعا لا تنسي اختيار تنسيق الوقت والتاريخ الى ترغب به ثم قم بعمل تحديث الاعدادات سوف تظهر تخطيطات كل اللغات المستخدمه للوحات المفاتيح فى الجهة اليسرى من النموذج داخل مربع قائمة القيم اختر اللغة التى تريد حذف التخطيط الخاص بها بها وتأكد من عدم اختيار اكثر من تخطيط لانه معد لاختيار متعدد ثم بعد ذلك قم بالضغط على زر الامر " حذف التخطيط ولغة لوحة المفاتيح " لتنهى مشكله تعدد تخطيطات لغات المفاتيح لاكثر من لغة بدون اعادة تشغيل نظام التشغيل LanguageCheck V3.0.2.zip
  12. هل فى امكانيه نستخدم anydesk ? فى تمام الساعه 3 او 3:30 اذا ممكن رد على علشان اعمل حسابى على هذا الميعاد لان هذه الفترة هى التى تناسبنى تبعا لظروف عملى
  13. فى استعلام كما بالمرفق التالى test.zip
  14. ان شاء الله عند استخدم هذه الجمله فى استعلام تجد من ورائها مبتغاك SELECT t1.* FROM test AS t1 WHERE EXISTS ( SELECT 1 FROM test AS t2 WHERE t2.[رقم الزبون] = t1.[رقم الزبون] AND t2.[إسم المادة] = t1.[إسم المادة] AND t2.[تاريخ الفاتورة] < t1.[تاريخ الفاتورة] AND t2.[تاريخ الفاتورة] >= DateAdd("m", -3, t1.[تاريخ الفاتورة]) ); ملاحظة هامة :- استخدمت t1 وt2 ليس تغييرا في اسم الجدول بل هو اسم مستعار مؤقت داخل الاستعلام أفضل ذلك عندما أستخدم نفس الجدول مرتين في مقارنة داخلية حتى يفهم Access أي نسخة نقصد داخل الاستعلام (خصوصا مع EXISTS أو JOIN) في الاستعلام المستخدم نحن نبحث داخل نفس الجدول test مرتين: مرة للصف الأساسي (t1) ومرة للصفوص الأخرى التي نبحث بينها عن التكرارات (t2) t1 هو السجل الأساسي الذي نتحقق منه t2 هو سجل آخر في الجدول نبحث فيه عن تطابقات الشرط EXISTS يتحقق من وجود أي سجل آخر بنفس اسم المادة ورقم الزبون في نطاق 3 شهور قبل تاريخ الفاتورة الحالية ولكن نصيحة ذهبيه حاول بقدرالامكان عدم استخدام اللغة العربية فى تسمية الجداول والحقول
  15. واثراء للموضوع يا والدى الحبيب و استاذى القدير و معلمى الجليل استاذ @jjafferr الفكرة فى الاساس مقدمه من الاستاذ @Foksh جزاه الله عنا كل خيـــر
  16. ممكن سؤال ؟ هل الجهاز اللى به المشكله متاح لك الان ؟
  17. السلام عليكم صادفتنى هذه المشكله من قبل يا استاذ @jjafferr ليست المشكله من الاوفيس ولا من الاكسس ولا حتى من نظم التشغيل المختلفه بمختلف انويتها ولكن المشكله بسبب بعض برامج الحماية والحل الوحيد و الامثل لهذه المشكله هو شئ واحد حماية محرر الاكواد بعمل كلمة مرور لمحرر الاكواد وقد نوهت الى ذلك لاخى الحبيب الاستاذ @طاهر اوفيسنا والحل هو فتح قاعدة البيانات فى وضع التصميم ثم الدخول الى محرر الاكواد كما فى الصور التالية ثم ثم كما تم مع هذه القاعدة باضافة كلمة مرور لمحرر الاكواد 123 Password for VBA-123.accdb
  18. انتظر ان كنت تفتح الوحدات النمطية ولا تجد اى اكواد فذلك احيانا يكون بفعل بعض برامج الانتى فايروس وان لم يكن عندك نسخه احتياطيه فللاسف سوف تعيد كتابة الاكواد من جديد النصيحه الذهبيه لا تترك قواعد بيانات ابدا ونهائيا بدون وضع كلمة مرور على محرر الاكواد لتمنع حدوث هذه المشكلة مستقبلا
  19. لا خالص ليه كل ده هيتم من من خلال استعلام او كود مع استعلام او كود بداخله بنية استعلام القاعده المرفقه فيه ده - جدول tblHolidaysWeekly دى عطلات اسبوعيه ثابته ولكن قد تتغير مع الايام لاى ظرف نبعا لقانون تنصه الدولة - جدول : tblHolidaysOfficial دى عطلات رسمية متغيره ويتم ملئ بياناته مع مطلع كل عام جديد أو تباعا على مدار الأيام
  20. يا اهلا فؤش أفندى أخى الحبيب واستاذى الجليل الاستاذ @Foksh - الغرض من الحقل isVacation في tblDailyRecords ؟ عند عملية التسجيل فقط للنوع اعتيارديه سوف يتم تسجيل كل الايام من ليكون كل سجل فى يوم ولكن بناء على تواريخ العطلات الرسمية تبعا للجدول الخاص بها وكذلك العطلات الاسبوعيه سوف يتم وضع القيمه true للحقل البوليانى isVacation والحقل النصى فى نفس الجدول : HolidayDescription سوف يتم تسجيل وصف العطلة الرسمية تبعا لتاريخها من الجدول الخاص بها او اسم اليوم للعطلة الاسبوعيه وفق الجدول الخاص بها كذلك لكى يتم استثناء هذه السجلات عند عمل فرز لسجلات هذا النوع لذلك الموظف طيب ليه عملته فى لائحة الاجازت يتم ترحيل الرصيد المتبقى لكل موظف ليتم اضافته الى رصيد بدايه العام للسنه الجديدة ولكن وفق شرطين ان يكون الموظف حصل على عدد 15 يوم اجازة اعتيادية لهذا العام بحد أدنى ان يكون شرط اساسى ايضا عدد 6 ايام متلاحقة وطبعا لابد ان يتخللها عطلات اسبوعيه و كمان ممكن يتخللها عطلات رسميه المهم ان تكون متصلة بشكل متتالى مع هذه العطلات ايا كانت وبشكل تواريخ متلاحق وهنا يأتى دور الحقل العددى : SerialNumber الموجود فى نفس الجدول لان كل اجازة من النوع اعتياديه عن كل فتره وليس كل يوم سوف تأخذ رقم مسلسل من واقع الرقم المسلسل يتم حصر عدد الايام ال 6 للنوع اعتيادية بدون ان يتم استثناء هذه السجلات التى تعمل القيمه true للحقل البوليانى isVacation لانه ممكن مثلا تبدأ الاجازة يوم خميس ويليها مباشرة يومين عطلات اسبوعيه جمعه وسبت ثم يليهم مباشرة عطلة عيد اضحى مثلا خمس ايام تبدأ من الاحد وتنتهى الخميس ويلهم مباشرة يومين عطلات اسبوعيه جمعه وسبت ثم باقى أجازة المظف لتكمل عدد 5 ايام فيكون الحقل لليوم الاول يأخذ مثلا حسب التسلسل لهذا الموظف للنوع اعتياديه رقم 20 لكل السجلات حتى تاريخ النهايه فى هذه الحالة ينتج عدد 6 ايام اعتيادى + 4 ايام عطلات اسبوعيه + 5 ايام عطلات رسمية ليكون المجموع الكلى للسجلات التى تحمل المسلسل 20 هو 15 سجل اذا هذا الموظف يكون حصل على عدد 6 ايام متصلين وفقا للوائح وخطر على بالى الان ان أقوم بتغيير اسم الحقل الرقم للمسلسل لنوع الاعتيادية الى : SerialTypeAnnual وخطر على بالى الان ان أقوم بتغيير اسم الحقل البوليانى الدال على انها عطله الى isHoliday اى نوع أخر من انواع اليوميات سوف يت فيه فقط تسجيل الايام الفعليه من واقع داله لتقوم بعمل استثناء لايام العطلات جميعا الرسمية والاسبوعية
×
×
  • اضف...

Important Information