-
Posts
12,480 -
تاريخ الانضمام
-
Days Won
233
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو ابوخليل
-
عليكم السلام حجم الشاشة ليس له تأثير ، الذي يؤثر هو دقة العرض اذكر لي مشاركة هنا بهذا الخصوص ، وهي وحدة نمطية تسجل فيها دقة الشاشة التي تم عمل البرنامج عليها ، وهي المسؤولة عن تعديل العرض في الاجهزة الاخرى . سأبحث لك عنها ... جرب هذا الرابط ووافنا بالنتيجة
-
مساعدة في عمل رسم بياني بين استعلامين
ابوخليل replied to mostafaelshnawy5's topic in قسم الأكسيس Access
-
خِلّ إذا جئتَه يوماً لتسألَهُ .... أعطاكَ ما ملكت كفّاهُ واعتذرا يُخفي صنائعَهُ والله يُظهرُها .... إنّ الجميلَ إذا أخفيتَه ظهرا
-
ربط برنامج الاكسس بجهازميزان جسري لوزن الشاحنات (weight bridge)
ابوخليل replied to Mostfa81818's topic in قسم الأكسيس Access
جزيت خيرا اخونا الكريم مصطفى- 1 reply
-
- 1
-
مساعدة في عمل رسم بياني بين استعلامين
ابوخليل replied to mostafaelshnawy5's topic in قسم الأكسيس Access
عليكم السلام لو ارفقت صورة تقريبية للرسم المطلوب ، ستجد تفاعل اكثر ان شاء الله حتى لو ترسم بالقلم الاعمدة والبيانات الافقية والمطلوب اظهاره بالبيانات العمودية -
مع الاحترام والتقدير والشكر الجزيل الذي سيأتي مستقبلا سيأخذ افضل اجابة اختصارا لوقته ، ولو اخذ باجابتي لواجه الخلل نفسه . اذا الاخ ازهر عمل الخطوة الصحيحة وسأعيد التقييم الى اصله أشد العلماء تواضعا أكثرهم علما ، الى ترى أن المكان المنخفض أكثر البقاع ماء
-
-
انا بعد ان تأكدت من عمل العدادات رجعت كالمعتاد اتأكد من المحرر اذا فيه اسطر زائدة او نحو ذلك .. فوجدت اني نسيت استبدل me.TimerInterval فبدلت TimerInterval بـــ المتغيرين j و t وغفلت عن me ورفعت المثال بدون فحص الف شكر استاذنا العزيز على المداخلة والإشارة الى مكان الخلل
-
مع عدم فهمي لطبيعة عمل هذه العدادات تفضل التعديل حسب طلبك If j = 1 Then If Me.A = 9 Then Me.A = 1 Else Me.A = Me.A + 1 End If If Me.B = 9 Then Me.B = 2 Else Me.B = Me.B + 1 End If Me.Y = A - B If Me.Y = Me.C Then Me.j = 0: MsgBox "OK" End If '=========================================== If t = 1 Then If Me.D = 9 Then Me.D = 1 Else Me.D = Me.D + 1 End If If Me.E = 9 Then Me.E = 2 Else Me.E = Me.E + 1 End If Me.x = D - E If Me.x = Me.F Then Me.t = 0: MsgBox "OK" End If لاحظ اني كررت الكود فقط timer11.rar
-
فواتير مرتجع المبيعات --------- الشرح اسفل
ابوخليل replied to عبد اللطيف سلوم's topic in قسم الأكسيس Access
لو سايرنا ابا اشرف في فكرته فانه يلزم عمل جدول او على الأقل حقول خاصة تبين تفاصيل العملية مع المبالغ المستردة او المدفوعة اضف الى ذلك ان حركة البيع السابقة تم قتلها . بينما الطريقة التي عرضتها يكفي ان تشير الى سبب الارجاع في الملاحظات ، وفي النهاية يتم حصر الاموال الداخلة والخارجة بكل يسر وكذلك يمكننا الاستعلام عن جميع المرتجعات بيع او شراء والملاحظات حولها . كل هذا ضمن جدول واحد -
فواتير مرتجع المبيعات --------- الشرح اسفل
ابوخليل replied to عبد اللطيف سلوم's topic in قسم الأكسيس Access
هنا يأتي أهمية دراسة أي مشروع قبل البدء ببنائه مشاريع المبيعات والمشتريات انواع : فمنها ما يكون المورد والعميل أساسي في هذه العمليات ( المدفوع / المتبقي / النقدي / الآجل ) ومنها ما لا يعير هذه اهمية وخاصة العميل وليس هذا محل نقاشنا بل : نعم .. وبكل تأكيد وما المانع في ذلك ؟ اذا تأملنا اي العناصر في مشروعنا هو الأهم ؟ المورد ام العميل ام المنتج ؟ من المؤكد والذي لا يختلف فيه اثنان ان المنتج هو مربط الفرس في هذا المشروع -
فواتير مرتجع المبيعات --------- الشرح اسفل
ابوخليل replied to عبد اللطيف سلوم's topic in قسم الأكسيس Access
لماذا ننصح دوما باستخدام جدول واحد لتفاصيل المبيعات والمشتريات الجواب : من اجل مرونة تدفق البيانات وسهولة احتوائها والتعامل معها هذه تتم عن طريق البحث برقم الفاتورة لا عكس قيود ولا شيء من هذا القبيل يجب ان يكون النظام سلس ومفهوم ويتم التعامل معه حسب البيانات المدخلة ( يمنع الحذف والتعديل الا في ظروف ضيقة جدا جدا ) فمرتجع البيع يسجل باعتباره شراء جديد ومرتجع الشراء يسجل باعتباره بيع وفي النهاية وفي المخرجات يمكننا اظهار النتائج من الأرصدة والمستخلصات بشكل صحيح ودقيق وتفصيلي ، وبأقل عدد من الادوات -
اخي الكريم في مشاركتي السابقة كنت اظن ان الجداول M_A .. M_B .. M_C هي جداول تفاصيل للمخازن واتضح انها لرصد الأرصدة حسب المخازن ، وفي الحقيقة اول مرة يمر علي مثل هذا التصميم المعروف ان الارصدة يتم اخذها من جدول تفاصيل البيع والشراء فاعتذر عن المواصلة ولعلك تجد من بعض اخوتك هنا من يمد لك يد العون
-
هذه نتيجة الرد السريع من غير فحص وتأكد نعم ما تفضلت به صحيح .. استاذنا الغالي
-
السلام عليكم لما تأخر الأخ ايمن بالرد على ابي جودي قلت يمكن لم يحقق مطلبه فرجعت للكود فوجدت انه ينقصه نقطة في هذا السطر ليصبح هكذا : NewFile = Me.StrNew & "\" & DBwithoutEXT & "-" & Format(Date, "yyyy-mm-dd") & "-" & Format(Now(), "Hh-Nn-Ss-AMPM") & "." & Right(DBwithEXT, 4)
-
السلام عليكم الجداول هي اساس كل برنامج مرن وناجح بعد الاطلاع على المرفق رأيتك عملت لكل مخزن جدولا يخصه فانت مجبر الآن بأن تعمل شاشات كل مخزن على حدة حتى تتمكن من فصل وعرض ارصدة المخازن . او اجعل الارصدة للعرض فقط خارج نموذج الادخال
-
تم اصلاح الحجم ، ورفعه هنا الصادروالوارد .rar
-
سيصبح الكود هكذا =DMax("date_catch";"TBCatch";"id_reader=" & [id_reader] & " And typy_cach='" & "catch" & "'")
-
= dmax("date_catch";"TBCatch";"id_reader=" & id_reader) LLL2.accdb
-
مساعدة في التحكم في تاريخ البرنامج من خلال الجدول
ابوخليل replied to amir_adam83's topic in قسم الأكسيس Access
>=#01/01/2021# And <#30/12/2021# جميلة مداخلتك اخوي ازهر واستخدام خاصية التحقق من الصحة ولكن يوجد متطلبات اخرى مصاحبة لهذا الشرط 1- في السنة القادمة سيضطر المبرمج الى التعديل على هذا الشرط 2- وهو الأهم فيما لو اراد المستخدم تجاوز الشرط والتعامل مع اي تاريخ -
مساعدة في التحكم في تاريخ البرنامج من خلال الجدول
ابوخليل replied to amir_adam83's topic in قسم الأكسيس Access
عليكم السلام سنعتمد السنة المالية حتى نحصل على الأقوى والأسرع الصق هذه الوظيفتين في وحدة نمطية عامة Public Function ctrlThisDate() As String ctrlThisDate = DLookup("FiscalYear", "Odb_TableControl", "FiscalYear='" & Year(Date) & "'") End Function Public Function chkThisDate() As Boolean chkThisDate = DLookup("Adhere_Current_Year", "Odb_TableControl", "FiscalYear='" & Year(Date) & "'") End Function ثم الصق هذا الكود في حدث قبل التحديث لأي حقل تاريخ وغير ما يلزم والتغيير فقط بتعديل اسم الحقل Private Sub TextTO_BeforeUpdate(Cancel As Integer) If IsNull(TextTO) Then Exit Sub If chkThisDate() Then If Year([TextTO]) <> ctrlThisDate() Then MsgBox " التاريخ خارج نطاق السنة الحالية" DoCmd.CancelEvent End If End If End Sub لاحظ انه يجب عليك التأشير على خانة التقييد ان اردته يعمل ،، والعكس صحيح DatabaseA2.rar -
حذف سجل من خلال كود vba - الشرح بالصورة المرفقة
ابوخليل replied to عبد اللطيف سلوم's topic in قسم الأكسيس Access
اهلا اخونا العزيز واستاذنا القدير أبو بسمله .. نعم صحيح غفلت عنها ، زادك الله علما اما بالنسبة الى استبدال الاستعلام بالجملة البرمجية فهي جميلة ايضا ، وتحتاج الى تعديل طفيف لتصبح : j = Nz(DSum("amount", "salary", "emp_name=" & emp_name & " And Year([dated])=" & Year(Date) & " And Month([dated])=" & Month(Date)), 0) والسبب ان الحدث هو قبل التحديث والتاريخ ستتم كتابته بعد ادراج المبلغ على اعتبار ان المبالغ المدفوعة ستكون داخلة ضمن نطاق الشهر الحالي وهذا اعتقد انه منطقي وهو الذي يحدث على ارض الواقع جرب على مثالك امسح جميع المبالغ والسجلات في النموذج الفرعي ثم ادخل مبلغ 1000 ثم جرب وأدخل 1001 سيظهر خطأ ، الا لو جعلنا التاريخ افتراضي (تاريخ اليوم) ثم استبدل كودك بالكود اعلاه وجرب -
مساعدة في فتح نمودج على بيانات ثلاثة نمادج
ابوخليل replied to ازهر عبد العزيز's topic in قسم الأكسيس Access
حسب طلبك الذي الغيته : ان اردت القيمة عند فتح النموذج تكون ظاهرة في مربع التحرير فاستبدل الكود Private Sub Form_Load() Me.FS.RowSource = wrCombVal End Sub بهذا Private Sub Form_Load() Me.FS.RowSource = wrCombVal Me.FS.SetFocus Me.FS.Text = wrCombVal End Sub -
حذف سجل من خلال كود vba - الشرح بالصورة المرفقة
ابوخليل replied to عبد اللطيف سلوم's topic in قسم الأكسيس Access
Private Sub amount_BeforeUpdate(Cancel As Integer) If IsNull(Me.amount) Then Exit Sub Dim i, j As Integer i = DLookup("salary", "emp", "id=" & emp_name) j = DSum("amount", "qryAmountInMonth", "emp_name=" & emp_name) If j + Me.amount > i Then Undo MsgBox "المبلغ يتجاوز المرتب الشهري" Exit Sub End If End Sub delete2.accdb -
مساعدة في فتح نمودج على بيانات ثلاثة نمادج
ابوخليل replied to ازهر عبد العزيز's topic in قسم الأكسيس Access
الاعلان عن متغير عام Public wrCombVal As String هذا المتغير يأخذ قيمته عند النقر على الزر في اي نموذج من النماذج الثلاث جعل مربع التحرير يأخذ قيمة المتغير wrCombVal عند فتح النموذج Private Sub Form_Load() Me.FS.RowSource = wrCombVal End Sub تفضل FFF2.accdb