بحث مخصص من جوجل فى أوفيسنا
Custom Search
|
-
Posts
10000 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
406
نوع المحتوي
التقويم
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو jjafferr
-
الكود مافيه شيء 1. هذا معناه ان الواجهة ليست متصلة دائما بالجداول ، وانما يتم الاتصال وقت حفظ البيانات ، اذا كان هذا صحيح ، فالافضل ان يكون عندك من بداية تشغيل البرنامج نموذج مخفي فيه بيانات من جدول , ويمكن ان يكون جدول فيه اسم/رقم البرنامج فقط ، المهم ان يكون الاتصال بين الواجهة والخلفية مستمر وغير منقطع من بداية تشغيل البرنامج ، 2. ولو انه سؤال سخيف ، هل برنامجك على نفس القرص الذي عليه نظام السيرفر؟ من المهم جدا ان لا تضع قاعدة بياناتك في القرص الذي عليه نظام الكمبيوتر، الوندوز ، سواء على السيرفر او على اي كمبيوتر آخر ، نعم انا قلت قرص ولم اقل partition ، يعني اذا القرص فيه C و D و E ، فلا تضع البرنامج على اي واحد منهم ، وانما ضعه على قرص آخر ليش؟ لاحظ الكمبيوتر او اللابتوب ، وبدون ان تشتغل عليه ، تلقى ضوء القرص دائما يولع وينطفئ ، هذا معناه ان نظام الكمبيوتر ، الوندوز ، يقوم بالعديد من الاعمال في الخلفية ، واذا النظام اعطى امر لتعديل شيء معين فيه ، وفي نفس الوقت قمت انت بطلب شيء معين في قاعدة بياناتك (مثل استعلام او حفظ بيانات او ...) ، ولآن النظام وبرنامجك على نفس القرص ، فالكمبيوتر سيجعل برنامجك ينتظر الى ان ينتهي من امر النظام ، بينما اذا كان برنامجك في قرص مستقل ، فـ CPU سيعطي الامر لكل قرص لعمل اوامره الخاصة به 3. تأكد ان الحقول التي فيها معيار في الاستعلام او في النموذج ، تأكد انها مفهرسة في الجدول ، فالفهرسة تجعل حجم البرنامج اكبر شوي ، ولكنها تجعل التعامل مع بيانات الجدول اسرع الاشياء اللي قلتها: ضغط واصلاح BE و FE ، مكان وجود البرنامج على القرص ، والفهرسة ، هذه جميعا لي تجارب معاها جعفر
-
تفضل ويجب فتح التقرير من النموذج. وللعلم ، برنامجك لا يوجد فيه إلا اسم واحد فقط. جعفر 680.الاجازات - Copy.accdb.zip
-
-
وعليكم السلام تفضل ، ضع هذا الكود على زر التعديل في النموذج الفرعي: Me.Parent.الاسم = Me.Phone Me.Parent.مربع_تحرير_وسرد65 = Me.Country Me.Parent.الادارة = Me.City ولكن: اسماء الحقول في النموذج الرئيسي والنموذج الفرعي ، ماشاءالله تفتح النفس للخطأ فنصيحتي ان تعدل فيهم مادام البرنامج في اوله جعفر
-
وعليكم السلام 1. اعمل ضغط واصلاح لبرنامج البيانات BE ، وكذلك لبرنامج الواجهة FE ، 2. واذا حبيت ، خلينا نشوف الكود ، واللي ممكن نتوصل الى شيء يفيدك. جعفر
-
السلام عليكم وتكملة لإجابة أخي أبو عبدالله في صفحة كود الاكسس ، اعمل بحث لكلمة KeyCode ، وسترى اسماء حروف التي على الكيبورد ، مثل (وهذه نسخة من مساعد الاكسس) : vbKeyEscape vbKeySpace vbKeyPageUp vbKeyPageDown ... normal keys: vbKeyA vbKeyB vbKey8 vbKey9 ... numeric keypad: vbKeyDecimal vbKeyDivide ... function keys: vbKeyF10 vbKeyF11 . والرابط التالي يعطيك اسم الزر ورقمه: https://msdn.microsoft.com/en-us/library/0z084th3(v=vs.90).aspx والآن ، وفي الاكسس ابحث عن Form_KeyDown ، وسترى كود مشابه وعليه ، لتعطيل اي زر ، نستعمل رقمه ، كما ذكره اخي ابو عبدالله ، او كما هو في الاكسس ، هكذا Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode Case vbKeyF11 KeyCode = 0 Case 16 'vbKeyShify KeyCode = 0 End Select End Sub . والآن الى الشيء الاهم: لما نكون في النموذج ، ونكون نكتب معلومة في حقل نص/مذكرة ، ولا نريد من المستخدم كتابة اشارة التقسيم "/" مثلا ، لذا يجب ان يصطاد النموذج هذا الزر قبل ان يدخل في النص ، لذا يجب عليك ان تعدل في اعدادت النموذج وتجعل اعداد KeyPreview=Yes . او تستعمل حدث تحميل النموذج ، وتضع عليه كود التفعيل اعلاه: Private Sub Form_Load() Me.KeyPreview = True End Sub جعفر
-
تستطيع ان تستعمل الكود الذي اعطيتك في آخر مشاركة ، مع إضافة حقل Auto_Date في الجدول (كما اشرت له سابقا) ، بحيث تحصل على ارقام تسلسل لكل سنه بصيغة 1 2 3 ... 100 101 جعفر
-
وعليكم السلام سؤال: 1. هل قصدك ان الرقم المسلسل يبدأ من اليوم الى ما لا نهاية من السنوات ، او 2. الرقم المسلسل يبدأ سنويا؟ اذا جوابك كان رقم 2 ، فيجب وجود حقل في الجدول فيه معلومة عن تاريخ ادخال السجل ، وانا دائما يكون عندي حقلين في جميع الجداول اللي اعملها: Auto_ID : ترقيم تلقائي ، Auto_Date : نوع تاريخ ، ونضع القيمة الافتراضية التالية في الجدول: Now بهذه الطريقة ، يكون كود الترقيم: If Len(Me.Seq & "") <> 0 Then Exit Sub Me.Seq = Nz(DMax("[Seq]", "tb1", "year([Auto_Date])=" & Year(Now)), 0) + 1 جعفر 679.1.ترقيم جديد كل سنة جديدة وبجداول جديدة.accdb.zip
-
طلب كود حذف الحروف والمسافات والإبقاء على الأرقام فقط
jjafferr replied to حامل المسك's topic in قسم الأكسيس Access
السلام عليكم بما ان أخي شفان جاء بكود اخونا أبو ابراهيم الغامدي ، فاليك التغيير المطلوب لحل مشكلتك: Function GetNumbersOnly(SText) Dim Numbers if len(SText & "")=0 then GetNumbersOnly="" exit function end if For i = 1 To Len(SText) If IsNumeric(Mid(SText, i, 1)) Then Numbers = Numbers & Mid(SText, i, 1) End If Next GetNumbersOnly = Trim(Numbers) End Function جعفر -
تحميل ملف من موقع عن طريق رابط ثابت مزود في البرنامج مسبقاً
jjafferr replied to sandanet's topic in قسم الأكسيس Access
السلام عليكم شباب أخي أوس ، خلينا من اللف والدوران ، والاشارة بين الروابط إذن الفكرة ان كل يرنامج سيكون لديه الصلاحية في الدخول لهذه الصفحة وانزال البرنامج المرفق فيها ، بغض النظر عن الرابط ، اذا الجواب نعم ، ضع برنامجك في موقع معين ، واعطنا صلاحية تغيير الملف ، وخلينا نجرب عليه جعفر -
وعليكم السلام شوف الرابط التالي ، قد يفيدك جعفر
-
أخي محمد المفروض ان تختار الجواب الاصح ، كأفضل مشاركة ، ولا تختار مشاركتك!! ولقد سبق ان قمت بنفس الشيء في مشاركة سابقة ايضا جعفر
-
وعليكم السلام رجاء النظر في المرحلة الاولى من التقرير . وهو عبارة عن تقرير رئيسي وفيه تقرير فرعي ، الآن يجب عليك عمل تقريرين فرعين (حسب شكل الصورة التي ارفقتها) ، واهم شيء في هذين التقريرين هو عمل الاستعلام الذي سيأتيك بالمعلومات ، فيجب عمل معيار حسب السنوات التي تريدها ونصيحة: اعمل اول تقرير فرعي ، وضعه في التقرير الرئيسي ، ولما يكون كل شيء تمام ، اعمل نسخة منه للتقرير الثاني ، ونسخة من الاستعلام ، ثم قم بتغيير معيار الاستعلام ليتلائم مع طلبك ، ثم ضعه في التقرير الرئيسي جعفر 680.الاجازات - Copy.accdb.zip
-
الرابط يعطيك احد الاسباب جعفر
-
توجيه الرقم من قارئ الباركود أو غيره إلى محله في النموذج
jjafferr replied to حامد عبد الكريم's topic in قسم الأكسيس Access
تفضل if left(me.activecontrol,1)="*" and right(me.activecontrol,1)="*" then me.Barcode_Field_Name = me.activecontrol cancel=true exit sub endif جعفر -
توجيه الرقم من قارئ الباركود أو غيره إلى محله في النموذج
jjafferr replied to حامد عبد الكريم's topic in قسم الأكسيس Access
شكرا اخي حامد ، عندما تُدخل رقم/حرف/اشارة/رمز في الكمبيوتر ، فهي قيمة تراها انت ، ولكن الكمبيوتر يرى هذه الارقام ، وكنت اتمنى ان ارى رقم (رقم + انتر) ، ولكنه ليس هناك في هذه الحالة الافضل لك ان جعفر -
توجيه الرقم من قارئ الباركود أو غيره إلى محله في النموذج
jjafferr replied to حامد عبد الكريم's topic in قسم الأكسيس Access
لوسمحت تعمل هذه التجربة في الحقل الذي ستنقر الباركود عليه ، ضع هذا الكود على الحدث "قبل التحديث" For i = 1 To Len(Me.ActiveControl) a = a & Asc(Mid(Me.ActiveControl, i, 1)) & vbCrLf Next i MsgBox a ثم ارفق صورة من الرسالة التي ستخرج لك. اريد اشوف ، هل قارئ الباركود يرسل ارقام فقط ، او اشارة اخرى معاه ، وعليه نستطيع ان نعمل كود التصيّد ان شاء الله جعفر -
شكرا على التوضيح
-
توجيه الرقم من قارئ الباركود أو غيره إلى محله في النموذج
jjafferr replied to حامد عبد الكريم's topic in قسم الأكسيس Access
اخي حامد انا اعتذر منك على المعلومة الخاطئة ، بينما لواقع هو عند طباعة الباركود يجب ان يكون الحقل بصيغة *رقم الباركود* ، وليس عند قراءته واحد الحلول هي كما ذكرت انت: وبالتالي تستطيع استعمال طريقتي التي ذكرتها في البداية جعفر -
توجيه الرقم من قارئ الباركود أو غيره إلى محله في النموذج
jjafferr replied to حامد عبد الكريم's topic in قسم الأكسيس Access
انا لا اتكلم عن ارقام الباركود ، انا اتكلم عن جهاز الباركود تجربه: اعمل حقل رقمي في الجدول ، والان ضع التركيز على هذا الحقل ، ومن جهاز الباركود اقرأ اي باركود ، ستجد انه لا يقبل ويعطيك خطأ ، لأن المعلومة التي ادخلتها ليست رقم بينما اعمل حقل نص في الجدول ، وضع التركيز على هذا الحقل ، ومن جهاز الباركود اقرأ اي باركود ، ستجد انه يدخل الباركود جعفر -
توجيه الرقم من قارئ الباركود أو غيره إلى محله في النموذج
jjafferr replied to حامد عبد الكريم's topic in قسم الأكسيس Access
وعليكم السلام احد الطرق الاسهل هو: الباركود عبارة عن: *رقم* فتستطيع عمل حدث "قبل التحديث" على جميع حقول النموذج ، انه اذا كان الرقم الُمدخل يبدأ بـ * وينتهي بـ * ، فاجعل الرقم داخل حقل الباركود جعفر -
حياك الله اخوي شفان اشوفك عملت الكود مثل اخونا رمهان ، كود مقتضب انا ما احب هذا النوع من الكود ، لأنه مو سهل فهمه ، والاسوء هو محاولتك تغييره بعد حوالي شهر ، حيث تكون نسيت تفاصيله والأهم هو شبه استحالة تغييره/تعديله/تضبيطه من صاحب السؤال ولكن الكود بهذه الطريقة لا يأتي إلا من محترف جعفر
-
شكرا أخي صالح على الملاحظة ، لما شفت ان مصدر بيانات النموذج الفرعي عبارة عن استعلام ، اعتقدت بأن المعيار موجود هناك اخي محمد ، اليك الكود المعدل ، والمرفق Private Sub Change_to_this_AfterUpdate() mySQL = "UPDATE Q1" mySQL = mySQL & " SET [الحالة] = '" & Me.Change_to_this & "'" mySQL = mySQL & " Where [id] = " & Me.id1 DoCmd.SetWarnings False DoCmd.RunSQL mySQL DoCmd.SetWarnings True Me.SUB.Form.Requery End Sub جعفر 683.test120.mdb.zip
-
الحمدلله ولكن ، اين كانت المشكلة؟ جعفر
-
وعليكم السلام انا غيّرت اسم حقل النص change في النموذج الرئيسي الى Change_to_this ، ثم ضع هذا الكود على حدث "بعد التحديث" للحقل اعلاه: Private Sub Change_to_this_AfterUpdate() mySQL = "UPDATE Q1 SET [الحالة] = " & [Forms]![test1]![Change_to_this] DoCmd.SetWarnings False DoCmd.RunSQL mySQL DoCmd.SetWarnings True Me.SUB.Form.Requery End Sub جعفر