الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيف يمكنني التحكم في Barcode عند الأدخال في خانة النص

مغلق
بدأه anasmory في 8 سبتمبر 2007 · 8 رد · 916 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

لدي مشروع أكسس وعندما أدخل رقم الصنف آلياً عبر الباركود لابد من النقر على خانة الكمية أو استخدام زر TAB للوصول إلى خانة الكمية

السؤال هو كيف أستطيع رفع حدث الإدخال في خانة رقم الصنف بحيث عند يسجل الرقم ينتقل التركيز إلى خانة الكمية ؟

مع الشكر والتقدير للقائمين على هذا المنتدى الرائع جداً والمفيد ، والسلام خير الخاتم.

#2

أكتب في حدث بعد التحديث AfterUpdate

[الكمية].SetFocus

ولو أني أشك أن المؤشر عند خروجه من خلية رقم الصنف فلن يتمكن من تنفيذ هذه العبارة

فأقترح عليك أن تجعل قيمة الـ Tab Index للكمية هي قيمة حقل الرقم زائدا واحد أي بمعنى :

إذا كانت قيمة التاب إندكس للرقم 5 تكون قيمة التاب إندكس للكمية هي 6

تم تعديل هذه المشاركة بواسطة Accessna في 8 سبتمبر 2007 في 03:14

#3

شكراً يا استاذي الكريم على سرعة استجابتك لي ومحاولة مساعدتي ولكن ليست المشكلة في الإنتقال ولكن المشكلة في على أي اساس انتقل من خانة رقم الصنف إلى خانة الكمية حيث (كيف أعلم أن مسح رقم الصنف قد أنتهى) واني يجب أن اشيك عليه ثم إذا وجدته بين االأصناف المسجلة مسبقاً انتقل

#4

هل جربت استخدام القارئ أولا ؟

ثم أن الجهاز يسمى قارئ وليس ماسح

القارئ يقوم بقراءة رقم الصنف ثم يقوم بإضافة كود الإدخال

بمعنى يقوم بعمليتين القراءة ثم الضغط على الإدخال فينتقل التركيز على الأداة التالية بشكل آلي

يعني لا يحتاج إلى فحص منك

لكن يمكنك التحكم بعملية منع الإنتقال من حدث قبل التحيث لرقم الصنف بوضع شروطك حسب الرغبة

جرب إفتح ملف نصي أو ملف وورد وجرب قراءة أي كود فسوف تلاحظ أن الرقم كتب وانتقل المؤشر إلى سطر جديد

تم تعديل هذه المشاركة بواسطة Accessna في 8 سبتمبر 2007 في 09:03

#5

للأسف فإن القارئ الذي لدي يقوم فقط بقراءة الرقم ولايقوم بإضافة كود الإدخال وهو من نوع(symbol) فكيف الحل جزاك الله الخير .

#6

أخي جرب أن تضع هذا الكود

Private Sub ItemCode_Change()
  MsgBox Me.ItemCode.txt, , "Change event"
End Sub

إذا هذا الحدث لم يشعر بكتابة القارئ فستضطر لعملية اختبار لكل الأحداث بأن تضع نفس الكود في كل منهم مع تغيير إسم الحدث

فمثلا حدث قبل التحديث سيكون كالتالي :

Private Sub ItemCode_BeforeUpdate()
  MsgBox Me.ItemCode.txt, , "BeforeUpdate event"
End Sub

حتى إذا ما أتتك أول رسالة ستعرف أي حدث تحتاج للتحكم بعملية الإنتقال إلى حقل الكمية بالكود الذي وضحته لك في المشاركة الأولى لي

لا تنسى تخبرنا بالنتيجة

تم تعديل هذه المشاركة بواسطة Accessna في 9 سبتمبر 2007 في 07:06

#7

إذا كان حقل رقم الصنف أول حقل سوف يحرر بالسجل فهذا الحدث "حتما" سيشعر به :

Private Sub Form_Dirty(Cancel As Integer)
  Me.ItemCode.SetFocus
  MsgBox Me.ItemCode.Text
End Sub
#8
Private Sub ItemNo_Change()
	Me.Caption = Me.ItemNo.Text
End Sub

جربت الكود بهذه الطريقة وفعلاً استجاب للأرقام المدخلة بواسطة القارئ وظهرة الأرقام في عنوان النافذة، بس المشكلة هي كيف أجعل حقل رقم الصنف يعرف أن عملية القارئة أنتهت ويجب الإنتقال بواسطة SetFocus إلى حقل الكمية مع ملاحظة أن رقم كود الصنف يختلف في عدد خاناته . ماهو الحدث أو الطريقة المناسبة لذلك وشكراً أتعبتك معي الف شكر.

#9

جرب هذا الكود :

Private Sub ItemNo_Change()
  If Trim(Nz(Me.ItemNo.Text, "")) <> "" Then
	Me.Qty.SetFocus
  End If
End Sub

وأنصحك بعمل حقل آخر لإدخال رقم الصنف يدويا ويكون أحدهما غير منضم

لأنك بهذه الكيفية للقراءة سيكون صعب عليك التحكم وخصوصا أن الطول غير ثابت

تم تعديل هذه المشاركة بواسطة Accessna في 10 سبتمبر 2007 في 01:26

هذا الموضوع مغلق.

مواضيع مشابهة