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

عمر ضاحى

الخبراء
  • Posts

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

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

  • Days Won

    10

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

  1. ما عندي مشكلة لكن ادينى شوية علشان انا فى الدوام حاليا
  2. ابدا والله تحت امرك مفيش تعب ولا حاجه هل هذا ما تريده VACATIONS.rar
  3. طيب ممكن توضحلى انت عاوز النتيجة تظهر فين ؟ وايضا اسم التقرير
  4. طبعا ينفع ولاني مش فاهم المفترض الرقم (النتيجة اين يتم وضعها ) فاطريت اجعلها فى رسالة لكن انت عدل على الكود ولنفترض ام الحقل الذي تريد اضافة النتيجة فيه اسمه X7 اذا انت هتضعها هكذا X7=CalcVac(D2, txtAge) txtAge هو حقل للعمر ممكن تستغني عن الحقل وتضع هذه المعادلة =DateDiff("yyyy";[DateOfBirth];Date()) الامر سهل ان شاء الله اذا تم حل مشكلتك اختر افضل اجابة 😁
  5. اتفضلى على فرض ان اسم النموذج هو Test Sub RenameFields() Dim frm As Form Dim ctrl As Control Dim fieldCount As Integer fieldCount = 1 'السطر التالى اختياري الغرض منه لكي يعمل الكود دون مشاكل لابد ان يكون النموذج المطلوب العمل عليه فى وضع عرض التصميم DoCmd.OpenForm "TEST", acDesign Set frm = Forms("Test") For Each ctrl In frm.Controls If ctrl.ControlType = acTextBox And ctrl.Tag = "*" Then ctrl.Name = "officena" & Format(fieldCount, "00") fieldCount = fieldCount + 1 End If Next ctrl End Sub ملاحظه علشان يشتغل الكود صحيح لابد ان يكون النموذج المطلوب العمل عليه فى وضع عرض التصميم
  6. جرب الحل هذا تم عمل مديول Function CalcVac(WorkDays As Double, EmpAge As Integer) WorkDays = WorkDays / 365 If EmpAge < 50 Then WorkDays = WorkDays * 21 Else WorkDays = WorkDays * 30 End If CalcVac = Format(WorkDays, "0.00") End Function ولحساب عمر الموظف =DateDiff("yyyy";[DateOfBirth];Date()) ولاستدعاء الدالة CalcVac(D2, txtAge) 'CalcVac("اسم حقل اجمالى ايام العمل", "اسم حقل عمر الموظف") وهذه هى النتيجة مرفق الملف VACATIONS-1.rar
  7. طيب تمام فين النموذج ال فيه انت بتمنح الاجازة او بيحسب فيها الاجازة
  8. واضح انى ممكن اكون مش مركز وفى غلط انا واقع فيه فانا هستأذنك لغدا ان شاء الله لاني مش شايف قدامي وبصحة الساعه 4:30 الفجر ف باذن الله هعيد الكود كله من اول وجديد واعطيكى الحل النهائى ان شاء الله
  9. سؤال جانبي مش المفترض ان فى قاعدة اخري ان الموظف اذا عمل فى الشركة اكثر من 5 سنوات يتحول من 21 يوم الى 30 يوم فى السنه ؟
  10. اوك سهله غيري فى الكود الكلمة [test] الى 'SEE REPORT' بالنسبه لباقى التعديلات حسب فهمي للمطلوب اتمني يكون ده المطلوب راجعي الملف المرفق lab0.rar
  11. Dim strSQL As String strSQL = "UPDATE test_order_tbl SET test_order_tbl.result = IIf([see_report]=Yes,[test],'') " & _ "WHERE (((test_order_tbl.see_report)=Yes));" DoCmd.RunSQL strSQL اتفضلى لكن محتاج توضيح بخصوص هذه النقطه بالنسبه للنقطه دي هل هذا الجدول مكون من سجل واحد ولا هيكون فيه سجلات ؟ لان لو سجل واحد اوك لو سجلات ما المرجع الذى يعود عليه للتحقق منها
  12. لا لا مش كده بصي ده الملف ال كنت شغال عليه لكن للاسف ما كملت الشغل بسبب الشغل واطريت اوقف العمل فيه lab0.rar ال كتبته لكي ده كود SQL لاستعلام وبيتم تشغيل الاستعلام من داخل النموذج بهذه الطريقة DoCmd.SetWarnings False DoCmd.OpenQuery "UpdateTestTable" DoCmd.SetWarnings True على فرض ان الاستعلام اسمه UpdateTestTable ان شاء الله انا بحاول انفذ الفكره بتعتك لكن المشكله فى تواجدي على الجهاز فان شاء الله بحاول اخلثها لك غدا وانا فى الدوام بالنسبه للنقطه دي هل هذا الجدول مكون من سجل واحد ولا هيكون فيه سجلات ؟ لان لو سجل واحد اوك لو سجلات ما المرجع الذى يعود عليه للتحقق منها
  13. بالنسبه للنقطه هذه استخدمي هذا الاستعلام UPDATE test_order_tbl SET test_order_tbl.result = IIf([see_report]=Yes,[test],'') WHERE (((test_order_tbl.see_report)=Yes));
  14. اذا تم حل مشكلتك لا تنسي غلق الموضوع باختيار افضل اجابة
  15. استخدم دالة format على التاريخ الموجود فى السجل format ("هنا ضع اسم الحقل الذي فيه التاريخ المسجل" ;"yyyy")
  16. على الرغم انى لم اعمل مثل هذا من قبل لكن اتفضل هذه محاولى هناك الكثير من التعديلات فى الاكواد والجداول والعلاقات عملتها وتم استبدال جميع اكوادك بحلقة تكرارية لكتابة اسماء الازرار وهناك بعض الملاحظات ------------------------------ اولا انت عند خطأ فى العلاقات بين الجداول هذا بعد التعديل على جدول التفاصيل وظبط العلاقات بين الجداول والخطأ الثاني تشابه مسمي سعر البيع وسعر المنتج (ولانه ليس له فائدة فقد تم حذفه ) لان هذا تكرار للبيانات ايضا لا تضع حقول محسوبه فى الجداول (العمليات الحسابيه تكون من الاستعلامات والنماذج) يجب ايضا توضيح العلاقة بين النموذج الفرعي والنموذج الرئيسي وهناك اشياء اخري لكن لم يسعفنى الوقت لتوضيحها اترك لك الباقى والنتيجة هي ------------------------- اتمني هذا يكون هو طلبك مرفق الملف كاشير المطاعم و الكافيهات و المحلات التجارية.rar اها كدت ان انسي عند محاولة برمجة زر جديد فى ال 40 زي كل ال مطلوب تعمله تكرر الكود الذى بداخل الصب هذا Private Sub A1_Click() If a1.Caption = "" Then: Exit Sub xCMD "A1" End Sub مثل تريد برمجة زر رقم a20 يبقى هتضيف داخل الصب الخاص به هذا الكود If a20.Caption = "" Then: Exit Sub xCMD "A20" وهكذا
  17. كان يفضل شرح محتويات الجداول لكن اولا فى امور لازم توضيحها اولا هل جدول sallesH هو رأس الفاتورة وجدول salles هو تفاصيل الفاتورة ؟
  18. انا عملتها على عجل (لانى باكون فى الشغل وبيطلب منى شغل تاني) لكنها فكره جيده لجلب البيانات مره واحده
  19. ^_^ سبقتني لكن احب ان اضيف مشاركه مع اخي @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 مع ان هناك حلول اخري لكن وجدت الاسهل والاسرع للحلول دون تغير (او فرض راي) على المبرمج
  20. ان شاء الله بهذا الكود تكتمل الحل 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
  21. استاذى الجليل @ابوخليل احب ان اشكرك كثيرا على تقريب الفكره لى (سائل المولى عز وجل ان يبارك لك فى عافيتك ويزيدك من علمه) 🌹🌹🌹🌹🌹🌹🌹🌹 واعتقد قريب من الحل النهائى فلك جزيل الشكر 🌹🌹🌹🌹🌹 فمع هذا الكود ممكن مع الاتعلام اضافتها ضمن الشرط 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 فاصبح الامر قريب باقى ان اقول فى الاستعلا ان اول سجل فيه القيمه لا تساوي الصفر يعمل عليه عمليه حسابيه والباقى لا يفعل اى عمليات حسابيه لان الباقى (اقصد باقى السجلات)يحمل قيمة الفاتورة كاملة اما الفرق هيكون فى السجل الاول الذى اصبح قيمته بالسالب بعد الصفر هفكر فى حل واذا لم اجد ^_^ فليس لى غيركم بعد الله (لكن انا احب الطريق الصعب فى البحث عن المعلومه )
×
×
  • اضف...

Important Information