اذهب الي المحتوي
أوفيسنا

عمر ضاحى

الخبراء
  • Posts

    1,021
  • تاريخ الانضمام

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

  • Days Won

    5

كل منشورات العضو عمر ضاحى

  1. كان يفضل شرح محتويات الجداول لكن اولا فى امور لازم توضيحها اولا هل جدول sallesH هو رأس الفاتورة وجدول salles هو تفاصيل الفاتورة ؟
  2. انا عملتها على عجل (لانى باكون فى الشغل وبيطلب منى شغل تاني) لكنها فكره جيده لجلب البيانات مره واحده
  3. ^_^ سبقتني لكن احب ان اضيف مشاركه مع اخي @Foksh تفضل هل هذا ما تريد 1234.rar ولتعم الفائدة وتضويح ما تم تم استخدام هذا الكود Sub GetInfo1() Dim db As DAO.Database Dim rst As DAO.Recordset Set db = CurrentDb Set rst = db.OpenRecordset("Sale_Reg", dbOpenDynaset) With rst .AddNew ![Sale_code] = DLookup("code", "main_itemn", "code=" & "Sale_code") ![Sale_Number] = 1 ![Sale_invoice] = Forms![Sale]![Invoice_Number] ![SSale_Price] = DLookup("Slae_price", "main_itemn", "code=" & "Sale_code") ![Sale_Date] = DLookup("Reg_Date", "main_itemn", "code=" & "Sale_code") ![Sale_Item_Name] = DLookup("item", "main_itemn", "code=" & "Sale_code") ![frosh_date] = Date ![scompany_name] = DLookup("company_name", "qry1", "code=" & "Sale_code") .Update .Close End With Set rst = Nothing db.Close Set db = Nothing End Sub مع ان هناك حلول اخري لكن وجدت الاسهل والاسرع للحلول دون تغير (او فرض راي) على المبرمج
  4. ان شاء الله بهذا الكود تكتمل الحل Public Function UpdateMyFil() Dim rs As Recordset Dim foundFirstRecord As Boolean Set rs = CurrentDb.OpenRecordset("TempStatmentAcc") foundFirstRecord = False Do While Not rs.EOF If rs("myfrq") < 0 And Not foundFirstRecord Then rs.Edit rs("MyFil") = rs("myfrq") rs.Update foundFirstRecord = True Else If foundFirstRecord Then rs.Edit rs("MyFil") = rs("CR") * -1 rs.Update End If End If rs.MoveNext Loop rs.Close End Function طبعا ال هيحمل الملف المرفق السابق لازم يضيف حقل جديد فى الجدول باسم MyFil
  5. استاذى الجليل @ابوخليل احب ان اشكرك كثيرا على تقريب الفكره لى (سائل المولى عز وجل ان يبارك لك فى عافيتك ويزيدك من علمه) 🌹🌹🌹🌹🌹🌹🌹🌹 واعتقد قريب من الحل النهائى فلك جزيل الشكر 🌹🌹🌹🌹🌹 فمع هذا الكود ممكن مع الاتعلام اضافتها ضمن الشرط V30: IIf(DateDiff("d";[QdDate];Date())>=0 And DateDiff("d";[QdDate];Date())<=30 And Nz([myfrq];0)<>0;[Cr];0) حيث انى اضفت هذا الشرط And Nz([myfrq];0)<>0 فاصبح الامر قريب باقى ان اقول فى الاستعلا ان اول سجل فيه القيمه لا تساوي الصفر يعمل عليه عمليه حسابيه والباقى لا يفعل اى عمليات حسابيه لان الباقى (اقصد باقى السجلات)يحمل قيمة الفاتورة كاملة اما الفرق هيكون فى السجل الاول الذى اصبح قيمته بالسالب بعد الصفر هفكر فى حل واذا لم اجد ^_^ فليس لى غيركم بعد الله (لكن انا احب الطريق الصعب فى البحث عن المعلومه )
  6. ما هي القيم ال هتطلع اما موجبه او صفر او سالبة لو موجبه يعنى ليس هناك فواتير مستحقه ولنا مبلغ (ال بالموجب) عند المورد لو صفر يعنى ليس هناك فواتير مستحقه وليس علينا اى مبالغ لو سالب يعنى هناك فواتير مستحقه لم تسدد فى الحالة الاولى والثانية (لن يظهر لى ارصدة ) فى الحالة الثالثه هيظهر مثلا من شهر 4 ( كمثال وليس مرتبط بملفى) المطلوب توزيع الفواتير التى ستظهر حسب الارصده بتعتها على الحالات الخمس ( 30 - 60 -90 -120 -اكثر من 120 يوم)
  7. 😅 هي دي المعضله فكرت لو مثلا جمعت جميع ما تم دفعه وليكن مثلا 50000 (يتم تخزين القيمة فى متغير) ثم اعمل حلقة تكرارية مع كل سجل من سجلات الفواتير الحلقه هذه تقوم بطرح قيمة الفاتورة فى السجل الاول (طبعا الترتيب من التاريخ الاقدم الى الاحدث) ويتم تخزين القيمة الجديده فى المتغير وهكذا الى ان يصل لسجل القيمة تكون صفر او سالب وبعدها يتم فرز القواتير التى نتائجها بالسالب حسب التواريخ الخاصه بها فهل ممكن تنفيذ هذا داخل الاستعلام باستخدام مديول اذا امكن
  8. استاذى ومعلمى الجليل الاستاذ @ابوخليل اولا بعتذر اني لم اوضح المطلوب بشكل اكثر تفصيلا (لعل عند كتابة الموضوع قمت من على الجهاز اكثر من مره حتى نسيت ما كنت اريد ان اكتبه ^_^) ما اريده بالظبط ان الاستعلام او حتى دالة vba يطرح قيمة المدفوعات من الفواتير يعنى مثلا دفعت فى 01/11/2023 مبلغ 5000 وفى نفس التاريخ استلمت فاتورة ب 5500 كده المورد له 500 وهكذا على مدار الايام والشهور لان البيانات الى فى الجدول هى بيانات (كشف حساب المورد) اريد ان اعرف الفواتير التى لم يتم دفعها خلال الفترات السابق ذكرها (ال 5 فترات ) لان فى فواتير تستحق دفعها مثلا بعد شهر او شهرين حسب الاتفاق ( مش عارف ان كنت عرفت اوضح المشكلة ام لا ) لكن اريد ان يتم خصم ما تم دفعه من الفواتير القديمه واظهار المبالغ المتبقيه (المستحقه) حسب عمر تاريخ الفاتورة
  9. السلام عليكم ورحمة الله وبركاته اساتذتى الكرام بعد اذن حضرتكم معي مشكلة فى عمل استعلام لتقرير معي جدول (مرفق الملف) فيه عمليات (قيود) باسم TempStatmentAcc دائن (Cr) (فيه ارصدة الفواتير) ومدين (Dr) ( فيه ما تم تحويله للمورد "السداد") وايضا هناك حقل لتاريخ الحركة QdDate المطلوب اظهار لى قيمة الفواتير التى لم تسدد خلال الفتره من 1 يوم الى 30 يوم ومن 31 يوم الى 60 يوم ومن 61 يوم الى 90 يوم ومن 91 يوم الى 120 يوم ومن 121 يوم فاكثر هناك محاولة لكنها مش ظابطة معي هل اجد حل لها لان الموضوع طول كثير معي تقريبا اقارب على الشهر ولم اصل لحل جيد GeneralTest.rar
  10. لهذا اخبرتك بهذا نصيحه من اخ لاخوه انا وقعت فى الكثير من الاخطأ فى البداية وتعلمت الخطأ اين لهذا اعادة هيكلة البرنامج شئ صعب ومرهق ان تعيد برمجة كل شئ من الاول لكن هذا افضل حل (لماذا ؟) لان لما هتعيد الهيكلة هتلاحظ مثلا ان فى عملية فى النموذج بتأخذ مثلا 4 خطوات لانهائها ممكن وقتها تفكر فى طريقة تجعلها اكثر سلاسة واقل فى كتابة الاكواد واعتبر هذه مراجعة شاملة للبرنامج لتحسينه وتطويره وفتح ابواب مجال التطوير على مصرعيه
  11. يعرض الصور وال PDF بشكل فعال من الممكن ان لديك مشكلة فى برنامج ادوبي ريدر (من الممكن انك تحتاج الى تحديثه او التأكد من وجود المكتبه )
  12. اكيد هتقابلك مشاكل كثيره وذلك لتشابه المسميات وايضا الرموز الخاصه برمجية قد تواجهك فيها مشاكل وايضا انت محتاج تعمل اعادة هيكلة للجداول اذا كل الجداول مثل هذه خذ نسخه بعيده عن الملف الاصلى واشتغل عليه اعادة هيكلة او قم بتصميم الجداول من اول وجديد ومن ثم انقل الداتا لكل جدول باستخدام الاستعلامات (او استيراد وتصدير مع مراعات تطابق الترتيب للحقول والمسميات لكل جدول)
  13. مبدئيا ارشح لحضرتك قناة الاستاذ محمود عبدالغفار https://www.youtube.com/@mahmoud1969 هتلاقى فيها سلسلة لشرح ادوات ال VBA وغيرها من الاكواد
  14. ما تم تم عمل جداول التى تم ذكرها سابقا فى مشارقتى السابقة وتم عمل العلاقات بين الجداول واصلاح الملاحظات وهذه هى النتيجة New Microsoft Access Database2.rar واترك لك الباقى
  15. الاخ الفاضل ايهاب اولا فى لغبطة فى الجداول يجب ان توضح علاقة الجداول ببعض وهذا لم يتم ثانيا تجنب وضع مسافات فى تسميات الحقول ثالثا لا تجعل جداول لها علاقة ببعض بها حقول بنفس التسمية رابعا لا تضع رموز خاصة فى تسميات الحقول تجنبا للاخطأ خامسا بالنسبه للمناطق والزبائن / الموردين و اى بيانات اخرى (قابله للزيادة) يجب ان تكون لها جدول مستقل هناك الكثير من الاشياء انت بحاجة تعلمها اولا لذا انصحت اولا بتعلم العلاقات وفائدتها من السهل على ان اقوم بتعديل كل هذه الملاحظات وارفع لك ملف وانهي لك الموضوع لكن لن تتعلم جيدا ان لم تبحث عن المعلومه وسوف اقوم بالتعديلات لك لكن لحين الانتهاء من التعديلات اتمني ان تفهم مشاركتي جيدا
  16. اتفضل تم تنفيذه على مثال المهندس / قاسم DD227-2.rar
  17. هذا الخطأ معناه ان هناك حقل [Org_Name] هذا الحقل متكرر فى اكثر من جدول بنفس الاسم يجب ان يكون هناك اختلاق بين التسميات زود حرف فى باقي الجداول او ارقام لتميز كل حقل عن الاخر
  18. لعمل فورم ادخال هتحتاج عمل فورم لكل جدول لحالة مستقل وفى الجدول الرئيسي هيكون ادخال البيانات للامور الفرعيه مثلا عن طريق قائمة منسدلة اخي الكريم واضح جدا ان حضرتك ليس لديك خبره فيمكنك الذهاب الى البحث وابحث عن المعلومات والشروحات فى المنتدي هنا او فى اليوتيوب افهم الاول التعامل مع الاكسيس الجداول والاستعلامات والعلاقات والنماذج والتقارير والمديول ...... خذ الامور سلمه سلمه لا تستعجل ابدأ فى الفيديوهات وافهم كل نقطه وخد منها ما تحتاجه لتنفيذ اعمالك واذا واجهتك مشكلة اطرحها هنا و ستجد الكثير من يساعدك هنا من اساتذنا الكرام
  19. الملاحظات 1- لا تضع رموز غريبه فى مسميات الحقول فى الجداول 2- يجب ان تكون الحقول التى سيتم عمل العلاقات بينهم من نفس النوع ( فبما ان الحقول الرئيسية فى الجداول الفرعية من نوع ترقيم تلقائى او رقم فهو يعتبر رقم لذا يجب ان يكون المقابل لها فى الحقول فى الجدول الرئيسي من نفس النوع "رقمي" ) انظر الى الصورة التالية توضح لك جذء من صور العلاقات المختلفة فى الاكسيس هناك الكثير من المواضيع التى تتكلم عن صور العلاقات بين الجداول انصحك ان تبحث عنها وتقرئها جيدا سوف تفيدك مستقبليا كثيرا
  20. اعمل ملف اكسيس وارفعه واحنا نسعدك فى عمل العلاقات (لكن انتبه : اعمل التسميات للحقول واسماء الجداول باللغة الانجليزيه ولا تضع مسافات بين الكلام)
  21. بص الموضوع محتاج انت تنظر لالية البيانات يعنى مثلا حسب كلامك انت محتاج تعمل جدول للسنوات وده الى حد ما محتاجه نظر لان لو علشان تفصل السنوات فممكن بدالة FORMAT تظهر السنه الخاصه بالجذئية هذه وهذا طبعا غير لو كان هناط طبيعه فى التسجيل تحتاج الى وجود جدول السنوات (مثل برامج المحاسبة والقيود السنويه .... النقطه الثانيه الاقسام اكيد هنا ممكن تحتاج عمل جدول للاقسام وهتجتاج جدول لبيانات الطلاب وجدول للمراحل للطلاب ومن ثم تبدأ بعمل العلاقة بين كل جدول حسب طبيعته وهنا هيكون جدول بيانات الطلاب جدول رئيسي وجدول الاقسام جدول له علاقة رأس باطراف (الرأس هو جدول الاقسام والطرف جدول بيانات الطلاب) واترك لك الباقى وطريقة الحل واذا واجهتك صعوبة اتفضل اسأل
  22. ما شاء الله يسلم يمينك على المجهود ويجعله فى ميزان حسناتك
  23. الف الف سلامه عليك استأل الله الكريم رب العرش العظيم ان يشفيك شفاء لا يغادر سقما
  24. بعتذر عن التأخير اتفضل هذا ما تريد ؟ وهذا ايضا جل اخر افضله New Microsoft Access Database.rar
  25. بصراحه حاولت ان احل مشكلتك لكن المشكلة ان كل مره بتوه فى الجداول عندك ومش فاهم العلاقة بين الجداول كويس لكن حلك انت فى انك تعمل استعلام الحاقى لنقل البيانات من الجدول الاول للثاني المشكلة انى مش عارف اربطلك الجداول ببعض لانى مش فاهمها صراحتا المفترض انك تعلن عن العلاقات بين الجداول للتيسير
×
×
  • اضف...

Important Information