نجوم المشاركات
Popular Content
Showing content with the highest reputation on 06/13/18 in مشاركات
-
السلام عليكم ورحمة الله وبركاته عندما يكون برنامج الاكسس يعمل ، وفجأة بدأ بإعطاء رسائل خطأ وبدون اي تعديل في البرنامج ، او عند عمل تعديل على البرنامج يُغلق الاكسس: . فغالبا المشكلة يمكن حلها بعمل هذه الخطوات: @Echo off Echo decompiling D:\Testing\myDataBase_FE.accdb "C:\Program Files\Microsoft Office\Office14\msaccess.exe" "D:\Testing\myDataBase_FE.accdb" /decompile /cmd shutdown Echo compacting D:\Testing\myDataBase_FE.accdb "C:\Program Files\Microsoft Office\Office14\msaccess.exe" "D:\Testing\myDataBase_FE.accdb" /compact Echo compiling D:\Testing\myDataBase_FE.accdb "C:\Program Files\Microsoft Office\Office14\msaccess.exe" "D:\Testing\myDataBase_FE.accdb" /cmd compile Echo compacting D:\Testing\myDataBase_FE.accdb "C:\Program Files\Microsoft Office\Office14\msaccess.exe" "D:\Testing\myDataBase_FE.accdb" /compact Echo Opening D:\Testing\myDataBase_FE.accdb , and Exiting .bat start "" "C:\Program Files\Microsoft Office\Office14\msaccess.exe" "D:\Testing\myDataBase_FE.accdb" وانا استعمل هذا الملف المرفق ليقوم بالعمل كله: سيفتح البرنامج ، ويجب عليك غلقه ، الى ان لا يفتح تلقائيا مرة اخرى. ولكن ، يجب دائما اخذ الاحتياط وعمل نسخة من البرنامج قبل عمل هذه الخطوات. اقدم لكم شرح بسيط عن الموضوع: في الكثير من الاوقات ، لما نعمل الكود ، نقوم بتعديل وتغيير وتضبيط الكود عدة مرات ، ولكن الاكسس في بعض الاحيان يبقى محتفظ بالكود القديم في ذاكرته !! لذلك : 1. اثناء البرمجة ، وبشكل يومي اقوم بتشغيل هذا الملف المرفق ، 2. وقبل تسليم البرنامج الى الزبون ، اقوم بتشغيل الملف للمرة الاخيرة ، واجهز البرنامج لتسليمه الى الزبون 1Decompile2.zip xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx النسخة رقم 2 ، والتي لا نتعامل مع الكود ، وانما بواجهة فقط 🙂 جعفر3 points
-
حياك الله اخوي عبد الفتاح في الواقع اعمل على مشروع كبير (والكبير الله سبحانه وتعالى) ، وكلما اعمل جديد ، فأحب ان اعرضه في المنتدى حتى يستفيد الباقين من هذه التجارب ، فخلّي عينك على مواضيعي الجديدة جعفر3 points
-
وخلي بالك ان الافضل محاسبيا الابقاء على السجلات التي تحتوي على القيمة صفر ( في خانة القيمة ) حيث انها فواتير ملغاة في حالة التسجيل يدوياً والياً واستبعادها في الاستعلام للاسباب التالية 1- ان هذه السجلات اخذت رقم تسلسل اوتوماتيكيا او ألى على النظام 2- ان الاحتفاظ بهذه السجلات يفيد في حالات الرقابة على النظام بحيث يتم حصر عدد السجلات التي تحمل صفر يفيد في تقييم موظف الداتا انتري وكفاءته في الادخال حيث ان كل سجل يحتوي الرقم صفر هو عملية تم تسجيلها بالخطأ بعيدا عن انقطاع الكهرباء 3- في حالة الحذف يتم مساوة السجلات المدخلة بالخطأ او عن غير قصد مع السجلات التي حذفت بالقصد ولذلك ربما يقوم مدخل البيانات بحذف سجلات او بنود من الفاتورة بحجة ان الكهرباء قطعت او حدث خلل بالنظام مما يكلف الشركة خسائر كبيرة وفادحة ... لذلك من الافضل عملية الاستبعاد من الاستعلام والابقاء على الفواتير المدخلة بالخطأ او اختيار الحقل الذي يحمل قيمة صفر في خانة الكمية وليس القيمة2 points
-
2 points
-
2 points
-
أخي @عبد اللطيف سلوم جرب هذا الكود قد يفي بالغرض Dim status As Boolean status = 0 If (MsgBox("ضغط عند الخروج" & Chr(13) & Chr(13) & "هل تريد ضغط قاعدة البيانات عند الخروج", vbYesNo, "ضغط اٍختياري")) = vbYes Then status = 1 Else status = 0 End If Application.SetOption "Auto Compact", status2 points
-
تم حل المشكلة جزاكم الله خيرا1 point
-
1 point
-
الله يجزيــــــــــــــــــــــك الخير تمت العملية بنجاح1 point
-
الف ترحيب باستاذنا الحبيب ابو الجعافر خواتم مباركه تقبل الله منا ومنكم صالح الأعمال وعيدكم مبارك مقدما كل سنه وانت طيب نورت المنتدي استاذنا الحبيب بعد طول الغياب تحياتي اليك1 point
-
السلام عليكم الافضل هو عمل معيار على الاستعلام والخاص بيومية المبيعات او حسابات العملاء او عمولات المناديب في حقل الكمية او السعر باستبعاد كل القيم التي تساوي صفر او null اي بدون قيمة IS NOT NUL طريقة اخرى تجدها على الرابط التالي بشرح وافي مع استبدل اسم الحقل من Id الى كمية المبيعات او قيمة المبيعات او سعر البيع او اي حقل تريد واليكم الملف الخاص بالمشاركة بدون ادنى تعديل من باب الامانة العلمية Delete Records.rar1 point
-
أخي @عبد اللطيف سلوم هذا الكود يصلح لقاعدة بيانات خارجية غير التي تعمل عليها1 point
-
وجدت كود لكن ما اعرفت اشتغل عليه رح ارفعه وتجربه انت يمكن تزبط الامور يمكن لأنه mdb compact.mdb1 point
-
أخي @عبد اللطيف سلوم بالعكس هذا يجعلنا نفكر بكود أخر يقوم بالضغط دون الحاجة لأغلاق البرنامج ... السؤال : هل هذا ممكن ؟ أخي @عبد اللطيف سلوم وجدت هذا الكود ضمن أكواد قديمة مجمعه من منتديات أخرى جربه وأعطني خبر هل يعمل أو لا ... SendKeys "{F10}" SendKeys "]sq"1 point
-
أخي @عبد اللطيف سلوم عادة ضغط القاعدة تحتاج إغلاق القاعدة ثم فتحها لتعمل على ضغط الجداول الموجودة ..... فلذلك عند الضغط على الزر الذي تحته الكود ... اغلق البرنامج لترى الفرق بعد عمل الكود .. فلذلك الافضل يتم الضغط عند الاغلاق .. والله أعلم1 point
-
أخي @عبد اللطيف سلوم دون تعديل مباشرة تحت حدث عند النقر على الرز فقط .... دون تعديل1 point
-
أخي @محمود أبوسيف المشكلة لدية في الاستعلام غير عبارة زبون في الاستعلام الى 2 لترى النتيجة1 point
-
السلام عليكم هل يمكن تصميم برنامج او شئ من خلاله عند اضافة رابط اي صفحة او الى اللعبة مثلا بيعطني اللاق تبعها كم وساعة و الدقيقة والثانية وجزء الثانية الحالية الان في رابط المضاف1 point
-
أخي @عبد اللطيف سلوم إما يحت زر أو عند الخروج من البرنامج ... والأفضل عند الخروج من البرنامج ... بالتوفيق1 point
-
1 point
-
1 point
-
اها ، مافي داعي يظهر لك الاسم ، ولكن الاسم سيكون قد تم اختياره ، بحيث تستطيع الدخول. جعفر1 point
-
1 point
-
1 point
-
شكرا لك يا عاشق الرقي وقريبا ان شاء الله نراك من الخبراء المحترفين تفضل البحث يتم بسرعة فائقة Dim rs As DAO.Recordset Dim rst As DAO.Recordset Dim r As Boolean Dim rr As Boolean On Error Resume Next Set rs = CurrentDb.OpenRecordset("SELECT data.crn FROM data WHERE (((data.name1)=meyar()))") Set rst = CurrentDb.OpenRecordset("SELECT out.crn FROM out WHERE (((out.name1)=meyar()))") r = rs!crn rr = rst!crn MsgBox r & "-" & rr If r = True And rr = True Then MsgBox "العميل موجود ضمن الحاليين والسابقين" ElseIf r = True And rr = False Then MsgBox "العميل موجود ضمن الحاليين فقط" ElseIf r = False And rr = True Then MsgBox "العميل موجود ضمن السابقين فقط" End If rs.Close: Set rs = Nothing rst.Close: Set rst = Nothing End Sub لاحظ وجود دالة في الوحدة النمطية العامة البحث في جدولين(select).mdb1 point
-
1 point
-
لا يعمل الرابط ، Request Rejected !! اذا ما اشتغل الرابط ، اعمل نسخة من Page Source ثم احفظها في ملف txt وارفقه هنا. جعفر1 point
-
1 point
-
وعليكم السلام اخي صالح يجب ان نعرف عمود/حقل تخزين قيمة المربع ، فكما نعرف في الاكسس ، فالقيمة الحقيقة لمربع التحرير والسرد قد لا تكون العمود الاول!! اعطني رابط الموقع واشوفه لك ان شاء الله جعفر1 point
-
1 point
-
شكراً لمجهودك الكريم اخي ولكن لم يكن المطلوب وتم عمله فى الرد الاخير وشكراً جزيلاً لك. شكراً اخى فهذا هو المطلوب .1 point
-
السلام عليكم اتمنى ان يكون الرد يوافق طلبك اعلى قيمة واخر ادخال.rar1 point
-
1 point
-
تفضل برنامج شئون عاملين 2020.xlsm1 point
-
1 point
-
اخي عبد اللطيف السلام عليكم لقد وجت لك الحل وبامتياز في الصفحة الثالثة للمنتدى في سؤالك السابق لنفس الموضوع ولاكنك لم تجبني على الموضوع تفضل واعمل كالاتي 1- قم باستيراد الجدول والاستعلام والنموذج والتقرير وجميعها باسم العداد من المرفق الى قاعدة البيانات لديك 2- افتح النموذج باسم المركزي من المرفق في وضع التصميم ستجد في المنتصف نموذجين صغيرين بوضع المخفي قم بنسخ النموذجين والصقها بالنموذج الرأيسي لقاعدة البيانات لديك ( الواجهة الرأيسية ) ولاكن لاتلصقها في نموذج كلمة المرور بل النموذج الذي يليه 3- اذهب الى المرفق وافتح نموذج المركزي في التصميم ثم الى حدث عند الفتح ستجد كد قم بنسخة والصقه لديك في نفس النموذج الذي نسخت له النموذجين الصغيرين في حدث عند الفتح واجعل الفاصل الزمني لعداد الوقت (1000) 4- انسخ الشريط الابيض الموجود في المرفق في نموذج المركزي الذي يبين عدد الايام الماضية والصقه بنموذج الواجهة لديك مع النموذجين الصغيرين اذا رغبت مسح العداد والبداية من اليوم الاول فأذهب الى جدول العداد وامسح جميع السجلات وهي عبارة عن وقت وتاريخ فيعود الى الصفر وذا رغبت بزيادة الايام او تقليلها فاذهب الى الكد ستجد رقم الايام في السطر الاول ( 15 ) يوم اكتب عدد ايام جديد ماتشاء وسيعمل لديك العداد على الفور ولا يتأثر بتغيير وقت النظام بل يحسب لك عدد مرات فتح قاعدة البيانات فقط علما اني استخدمته مراراً واثبت فاعليته بالتوفيق تطبيق عداد الوقت.rar1 point
-
تفضل رسالة بثلاث احتمالات Dim rs As DAO.Recordset Dim rst As DAO.Recordset Dim i, ii As Integer Dim r As Boolean Dim rr As Boolean Set rs = CurrentDb.OpenRecordset("data") Set rst = CurrentDb.OpenRecordset("out") rs.MoveLast rs.MoveFirst For i = 1 To rs.RecordCount r = Nz(DLookup("crn", "data", "name1 ='" & Me.txtsearch & "'"), 0) Next i rst.MoveLast rst.MoveFirst For ii = 1 To rst.RecordCount rr = Nz(DLookup("crn", "out", "name1 ='" & Me.txtsearch & "'"), 0) Next ii If r = True And rr = True Then MsgBox "العميل موجود ضمن الحاليين والسابقين" ElseIf r = True And rr = False Then MsgBox "العميل موجود ضمن الحاليين فقط" ElseIf r = False And rr = True Then MsgBox "العميل موجود ضمن السابقين فقط" End If Set rs = Nothing Set rst = Nothing البحث في جدولين.mdb1 point
-
أخي @انس المنصوري ارفق مثال به بيانات حتى نعمل عليه .... أبشر1 point
-
1 point
-
الاخ waleed907 السلام عليكم هذا البرنامج كان من تصميمي الشخصي وكان بعنوان (برنامج قروض للمبتدئين)اكسس 2003 ورفعته على مندى اوفسينا للفائدة منذ مدة ليست ببعيدة ومنتديات اخرى مملكة الاكسس والمحيط العربي منذ مدة بعدما اجريت عليه بعض التعديل ليتوافق مع اكسس 2013 ورفعته على مندى اوفسينا فهل من المعقول ان يظهر بحلة جديدة بزيادة لنموذجين وبعنوان جديد وباسم مصمم اخر اعتقد ان هذا الامر ........ (مصادرة لجهود الآخرين) رجاءً لاتاخذ برامج غيرك وتسميها باسمك كمصمم اليك البرنامج الاصلي من تصميمي تفضل قروض.rar1 point
-
الدرس الثالث: الدالة Select Case تشبه الدالة Select Case إلى حد كبير الدالة If و لكنها تختلف عنها بالتعدد أي أنها تكون في الشروط المتعددة. طريقة الاستعمال: الصيغة الأولى: Select Case Expression Case Expression_1 Statement_1 Case Expression_2 Statement_2 Case Expression_n Statement_n End Select تقوم الدالة Select Case باختبار حالة الكائن أو المتغير Expression و مقارنتها أو مطابقتها مع الحالات الموجودة بداخلها. و عند تحقق الشرط مع إحدى الحالات يقوم البرنامج بتنفيذ التعليمة Statement التابعة لهذه الحالة. و عند عدم مطابقة الكائن أو المتغير لجميع الحالات فإن البرنامج لا يعطينا أي نتيجة. مثال1: كتابة الأرقام من 1 إلى 4 بالحروف Select Case me.le_nombre Case 1 Me.y = "واحد" Case 2 Me.y = "إثنان" Case 3 Me.y = "ثلاثة" Case 4 Me.y = "أربعة" End Select أضفنا مربع نص اسمه le_nombre لإدخال الأرقام و مربع نص اسمه y من أجل ظهور النتيجة. الصيغة الثانية: Select Case Expression Case Expression_1 Statement_1 Case Expression_2 Statement_2 Case Expression_n Statement_n Case Else Other_statement End Select في هذه الصيغة عند عدم تحقق الشرط مع جميع الحالات يتم إرجاع التعليمة الإستثنائية Other_statement مثال2: نفس المثال الأول Select Case me.le_nombre Case 1 Me.y = "واحد" Case 2 Me.y = "إثنان" Case 3 Me.y = "ثلاثة" Case 4 Me.y = "أربعة" Case Else me.y = "هذا الرقم غير موجود" End Select هذا عندما نضيف أي رقم يختلف عن 1 أو 2 أو 3 أو 4 يطبع لنا "هذا الرقم غير موجود" مثال 3: برنامج كتابة ملاحظات التلاميذ حسب الدرجة Select Case Me.Degre Case 0 To 30 Me.y = "ضعيف" Case 30 To 49 Me.y = "دون الوسط" Case 50 To 69 Me.y = "مقبول" Case 70 To 89 Me.y = "جيد جدا" Case 90 To 100 Me.y = "ممتاز" Case Else Me.y = "هذه الدرجة خاطئة" End Select هنا إستخدمنا To معناه إلى مثلا: من 0 إلى 301 point
-
ماشاء الله عليك اخوي صالح ، كفيت ووفيت ، وما بقيت لي شئ اكتبه التنسيق: وذلك بإستخدام زر الـ Tab (لتحريك السطر Indenting) ، و زر Enter (للإنتقال الى السطر التالي) تنسيق وتجميع مجموعات اللـ IF مهم ، وكلما كان تنسيقك افضل ، كلما قلّت اخطاءك ، وكلما استطعت الوصوت للخطأ بسرع في الصور كود لبرنامج أحد الاعضاء (واعتذر مسبقا من صاحب الاكواد) ، لاحظ طريقة عرض الكود ، بدون تنسيق ، وصعوبة معرفة بداية ونهاية الشرط IF : قبل التنسيق وسهولة القراءة بعد التنسيق . اما الكود التالي ، فذكرني بالكاريكاتير "ابحث عن فضولي" ، وهنا نبحث عن بداية ونهاية الشرط IF : . وتم تعديل التنسيق (تغيير الكود هو للتوضيح) الى: . هناك شيئين في التنسيق ، الاول: لاحظ انه من السهل معرفة بداية ونهاية كل شرط ، وحتى الشروط المتداخلة في الشرط الاصلي ، اصبح من السهل معرفة بدايتها ونهايتها ، ونافذة الكود تخبرنا 1: على اي سطر نحن (Line, Ln) ، و 2: في اي عمود (Column, Col) ، مما يساعدنا في عملية التنسيق . ثانيا: لاحظ اني عندما اقفل الجملة الشرطية End If ، فاني اكتب تعليق خلفها ، وهذا التعليق مأخوذ من جزء من بداية الشرط IF ، هذا يسهل عليّ كثيرا معرفة بداية ونهاية الجملة الشرطية: . جعفر1 point