تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
هل يُمكن إضافة اسم المنتج من عمود أسماء المُنتجات مُباشرة في حالة التكرار
#1
إخواني الكِرام أستخدم برنامج يقوم بتسجيل الباركود الخاص بالمنتج ثم أكتب اسم المُنتج وموقعه، وأعاني من مُشكلة ظهرت، هي في حالة كتابة الباركود الخاص بمنتج تم تسجيله من قبل أود أن إذا كتبت الباركود قي الصندوق النصي الأول بمجرد الانتقال بزر Tab إلى كتابة الاسم في الصندوق النصي الثاني يتم كتابته مُباشرة إذا كان موجود من قبل دون إعادة كتابة الاسم من جديد ودون كتابة موقع المُنتج السابق والسماح بكتابه الموقع الجديد، وجزاكم الرحمن خيراً.

بمعني أنه يبحث بشكل بسريع بعد كتابة الباركود، داخل عمود الباركود فإن وجد نفس الباركود يقوم باِستدعاء اسم المُنتج فقط ويقوم بإضافته تلقائياً في الصنودق النصي الثاني وإن لم يجد نفس الباركود يجعل الخانات فارغة.

- علماً أنني استخدم قاعدة بيانات أكسس.

يسَّر الله عليكم كل أمرٍ كما تُسيرون على عباد الله.
عن أبي هريرة - رضي الله عنه - قال: قال رسول الله - صلى الله عليه وسلم -: ((كلمتان خفيفتان على اللسان، ثقيلتان في الميزان، حبيبتان إلى الرحمن: سبحان الله وبحمده، سبحان الله العظيم))؛ متفق عليه.

الرد }}}
تم الشكر بواسطة:
#2
اهلاً بك اخى Hazem1 من جديد

كل الامر فى حدث TextBox_KeyDown
استخدم الكود بهذا الشكل
كود :
       If e.KeyCode = Keys.Tab Then
           '  استخدم كود الاستعلام للتحقق مع ظهور رسالة وما تشاء  '
       End If

مكان التلميح فقط ضع كود الاستعلام الذى تريد التحقق منه
وعرض الرسالة وما تشاء من فعله

تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
تم الشكر بواسطة: Hazem1 , Hazem1 , ابراهيم ايبو
#3
أخي الحبيب أشعر أنك مُجهد جداً من السهر أعانك الله، فكرتي نفس فكرة برنامج المبيعات بمجرد وضع الباركود في الصندوق النصي يظهر اسم المنتج وسعره، وإذا لم يكن هناك باركود يظهر رسالة خطأ، لكن كل الذي أريده إن يظهر اسم المنتج فقط وأن يسمح بتسجيل جديد.

أو عند كتابة الباركود وكان الباركود مسجل من قبل تظهر رسالة، "هذا المنتج تم تسجيله مُسبقاً، هل تريد إضافته مرة ثانية ؟ ، فإذا اخترت نعم يظهر الباركود والاسم فقط ويترك لي باقي الحقول فارغة ( على أساس أني أحتاج الاسم فقط ) وإذا ضغطت ( لا )، يظهر الباركود واسم المنتج وتظهر كل الحقول التي تم تسجيلها مسبقا.

الذي أعرفه أنني سأحتاج لاستخدام قاعدة if وكود البحث لكن لا أعلم كيف سيتم البحث التلقائي بمجرد وضع الباركود وهل سوف استخدم أحداث الكيبورد أو الماوس بحيث عند الانتقال بالماوس أو زر Tab الصندوق النصي الثاني يتم تنفيذ البحث التلقائي ؟

جزاكم الله خيراً وأكرمكم بالفردوس الأعلى.
عن أبي هريرة - رضي الله عنه - قال: قال رسول الله - صلى الله عليه وسلم -: ((كلمتان خفيفتان على اللسان، ثقيلتان في الميزان، حبيبتان إلى الرحمن: سبحان الله وبحمده، سبحان الله العظيم))؛ متفق عليه.

الرد }}}
تم الشكر بواسطة:
#4
(04-09-18, 08:03 AM)Hazem1 كتب : أخي الحبيب أشعر أنك مُجهد جداً من السهر أعانك الله، فكرتي نفس فكرة برنامج المبيعات بمجرد وضع الباركود في الصندوق النصي يظهر اسم المنتج وسعره، وإذا لم يكن هناك باركود يظهر رسالة خطأ، لكن كل الذي أريده إن يظهر اسم المنتج فقط وأن يسمح بتسجيل جديد.

أو عند كتابة الباركود وكان الباركود مسجل من قبل تظهر رسالة، "هذا المنتج تم تسجيله مُسبقاً، هل تريد إضافته مرة ثانية ؟ ، فإذا اخترت نعم يظهر الباركود والاسم فقط ويترك لي باقي الحقول فارغة ( على أساس أني أحتاج الاسم فقط ) وإذا ضغطت ( لا )، يظهر الباركود واسم المنتج وتظهر كل الحقول التي تم تسجيلها مسبقا.

الذي أعرفه أنني سأحتاج لاستخدام قاعدة if وكود البحث لكن لا أعلم كيف سيتم البحث التلقائي بمجرد وضع الباركود وهل سوف استخدم أحداث الكيبورد أو الماوس بحيث عند الانتقال بالماوس أو زر Tab الصندوق النصي الثاني يتم تنفيذ البحث التلقائي ؟

جزاكم الله خيراً وأكرمكم بالفردوس الأعلى.

بالعكس اخى الحبيب انا لم اكن اسهر هذا اليوم

بكل كنت مستيقظ قبل صلاة الفجر من ثم دخلت قليلاً 
حتى اجب على المواضيع هنا قبل الذهاب الى العمل

ويبدو ان الفكرة لم تصلك بعد اخى الحبيب 

اجعلنى اوضح الكرة اكثر بشتى الطرق بعد تعديلك للموضوع

اولاً عند الضغط على الـ Tab يوم بالتحقق من الباركود أى رقم المنتج

فى حدث TextBox_KeyDown استخدم الكود التالى
كود :
       If e.KeyCode = Keys.Tab Then
           NameSubForSelectByID()
       End If

ثانياً بخصوص عند التنقل او باصح مغادرة اطار TextBox الى اخر

من خلال حدث TextBox_Leave استخدم الكود التالى
كود :
           NameSubForSelectByID()

انتى فى الخطوة الاخيرة وهو عمل Sub كما هو التالى
كود :
   Sub NameSubForSelectByID()
       ' ضح كود الاستعلام بقاعدة الباينات ى جدول امنتجات
       ' ثم م بعمل التحقق اذا كان امنت موجود بالاستعلام
       ' يتم ظهور رسالة كما ذكرتها فى موضوعك
       ' وباقى الاجراءات التى مطلوب فعها تخيلها تماماً لو بتنشاء مستخدم جديد للبرنامج
   End Sub

تخيل فى الـ Sub انك بتتعامل مع زر تحقق او بحث .... الخ
ضح كمل الكود وما تريد فعلها داخل هذا السب بكده يمكنك استخدامه فى اكثر من مكان كما تم توضيحه فى الاعلى

اتمنى ان تكون الصورة وضحت بشكل اكبر الان وان الشرح غير معقد

تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
#5
جرب هذا الكود

كود :
For I = 0 To DataGridView1.Rows.Count - 1
          If DataGridView1.Rows(I).Cells(0).Value = TXT_IDPRODUCT.Text Then
              If MsgBox("هذه السلعة موجودة مسبقا هل تريد زيادة كميتها بمقدار 1", MsgBoxStyle.Question +
                        MsgBoxStyle.YesNo, "") = MsgBoxResult.Yes Then
                  DataGridView1.Rows(I).Cells(4).Value += 1
                  MsgBox("تمت إضافة السلعة", MsgBoxStyle.Information, "")
                  Exit Sub
              End If
          End If
      Next
الرد }}}
#6
(04-09-18, 07:40 PM)elgokr كتب :
اولاً عند الضغط على الـ Tab يوم بالتحقق من الباركود أى رقم المنتج

فى حدث TextBox_KeyDown استخدم الكود التالى
كود :
       If e.KeyCode = Keys.Tab Then
           NameSubForSelectByID()
       End If

ثانياً بخصوص عند التنقل او باصح مغادرة اطار TextBox الى اخر

من خلال حدث TextBox_Leave استخدم الكود التالى
كود :
           NameSubForSelectByID()

انتى فى الخطوة الاخيرة وهو عمل Sub كما هو التالى
كود :
   Sub NameSubForSelectByID()
       ' ضح كود الاستعلام بقاعدة الباينات ى جدول امنتجات
       ' ثم م بعمل التحقق اذا كان امنت موجود بالاستعلام
       ' يتم ظهور رسالة كما ذكرتها فى موضوعك
       ' وباقى الاجراءات التى مطلوب فعها تخيلها تماماً لو بتنشاء مستخدم جديد للبرنامج
   End Sub

يسر الله أمرك يا أخي الغالي، صدقاً الشرح واضح لكن لا أدري ماسبب وجود الخطأ معي بمجرد كتابة الكود
تصنيف البيانات عندي كالتالي:
بالنسبة لاسم المُنتج في قاعدة البيانات تحت اسم P Name  ( المسافة غير مسموح بها في كتابة الكود )
ورقم الباركود Barcode
وال ID يُمثل الرقم التلقائي أثناء تسيجل المُنتجات

أرفقت لحضرتك ثلاث صور


(05-09-18, 12:44 AM)asemshahen5 كتب : جرب هذا الكود

كود :
For I = 0 To DataGridView1.Rows.Count - 1
          If DataGridView1.Rows(I).Cells(0).Value = TXT_IDPRODUCT.Text Then
              If MsgBox("هذه السلعة موجودة مسبقا هل تريد زيادة كميتها بمقدار 1", MsgBoxStyle.Question +
                        MsgBoxStyle.YesNo, "") = MsgBoxResult.Yes Then
                  DataGridView1.Rows(I).Cells(4).Value += 1
                  MsgBox("تمت إضافة السلعة", MsgBoxStyle.Information, "")
                  Exit Sub
              End If
          End If
      Next


جزاك الله خيراً على اِهتمامك أخي الكريم ، المُشكلة أنني لم أقم بإعداد الداتاجريدفيو بصفوف هكذا :
DataGridView1.Rows(I).Cells(1).Value

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


الملفات المرفقة صورة/صور
           
عن أبي هريرة - رضي الله عنه - قال: قال رسول الله - صلى الله عليه وسلم -: ((كلمتان خفيفتان على اللسان، ثقيلتان في الميزان، حبيبتان إلى الرحمن: سبحان الله وبحمده، سبحان الله العظيم))؛ متفق عليه.

الرد }}}
تم الشكر بواسطة:
#7
ضع المثال للتعديل عليه .
الرد }}}
تم الشكر بواسطة: Hazem1
#8
اخى الحبيب بخصوص حديثك عن P Name
لان المسافة موجودة بين الاسم
كل ما عليك فعله التالى
ان تستخدم الاسم بهذا الشكل
PHP كود :
[P Name


أو بهذا الشكل
كود :
`P Name`

وبكده ستحل مشكلة الكود مع المسافة

تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو , Hazem1 , Hazem1
#9
(06-09-18, 02:14 PM)elgokr كتب :
اخى الحبيب بخصوص حديثك عن P Name
لان المسافة موجودة بين الاسم
كل ما عليك فعله التالى
ان تستخدم الاسم بهذا الشكل
PHP كود :
[P Name


أو بهذا الشكل
كود :
`P Name`

وبكده ستحل مشكلة الكود مع المسافة

تحياتى لك
وتمنياتى لك التوفيق

جزاك الله خيراً أخي الكريم، هذا الذي ظهر معي رغم تصحيح الكود


الملفات المرفقة صورة/صور
   
عن أبي هريرة - رضي الله عنه - قال: قال رسول الله - صلى الله عليه وسلم -: ((كلمتان خفيفتان على اللسان، ثقيلتان في الميزان، حبيبتان إلى الرحمن: سبحان الله وبحمده، سبحان الله العظيم))؛ متفق عليه.

الرد }}}
تم الشكر بواسطة:
#10
اخى الفاضل انت تستخدم اسم عمود بجدول
قبل اسم Sub ليه

اولاً فى الصورة هنا 


يحدث الخطاء هنا كونك لم تقوم بانشاء الـ Sun الخاص بالاسم
ويبدو انك لا تتعامل بالاكواد فى المشروع لديك بال انك تتعامل بالادوات

لذلك اخى الحبيب ارفق المشروع الذى لديك
حتى يتم عمل الازم بالمشروع واعادة رفعه لك بعد الانتهاء

تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
تم الشكر بواسطة: Hazem1 , Hazem1


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  مشكلة فى جمع عمود فى داتا جريد فيو احمد خطاب 3 152 06-03-24, 07:49 PM
آخر رد: احمد خطاب
  تعديل بيانات عمود DataGridView دفعة واحدة مصمم هاوي 2 164 05-03-24, 08:27 PM
آخر رد: مصمم هاوي
  كيفية جمع أرقام عمود فى الداتا جريد فيو بناءاً على بيانات معينة heem1986 5 223 25-02-24, 11:26 PM
آخر رد: heem1986
  [سؤال] كود اظهار رساله في حال وجود الرقم في اكثر من عمود مبرمج صغير 1 6 402 09-01-24, 01:41 AM
آخر رد: Taha Okla
  حماية عمود داخل ورقة الاكسل العيدروس 3 190 05-01-24, 12:21 AM
آخر رد: HALIM ELEULMA
  جلب مجال أسماء sql محمد العموري 2 203 05-01-24, 12:15 AM
آخر رد: HALIM ELEULMA
  [VB.NET] إضافة أو حذف حقل فى قاعدة بيانات باستخدام كود VB.net AmeenRashed 21 1,198 30-12-23, 03:47 PM
آخر رد: Taha Okla
Question [VB.NET] اسم عمود الأرقام في DataGridView أبو خالد الشكري 6 606 03-12-23, 08:01 AM
آخر رد: أبو خالد الشكري
  طريقة نقل بيانات عمود من جدول إلى جدول اخر Adel27213 4 447 06-11-23, 07:35 AM
آخر رد: justforit
Rainbow [سؤال] إضافة شريط ضبط الكتابة في أداة RichTextBox أبو خالد الشكري 0 217 29-10-23, 08:19 AM
آخر رد: أبو خالد الشكري

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم