تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
كيف اقوم بالخروج من Sub عبر Sub اخرى
#1
يوجد لدي كود يقوم بالتحقق من وجود اسم المستخدم بقاعدة البيانات ب sub مستقلة ... اريد عندما اضغط على ذر الحفظ ... والاتصال بال Sub يقوم بالخروج من الذر اذا كان المستخدم موجود


PHP كود :
Private Sub Check()
        
Dim conn3 As New OleDbConnection(ConfigurationManager.ConnectionStrings("LAUNDRY_SYSTEM.My.MySettings.Laundry_DatabaseConnectionString").ConnectionString)
        
Using Cmd As New OleDbCommand("SELECT * from login Where user_name = @user_name "conn3)
            
Cmd.CommandType CommandType.Text
            Using sda 
As New OleDbDataAdapter(Cmd)
                
Cmd.Connection conn3
                sda
.SelectCommand Cmd
                Cmd
.Parameters.AddWithValue("@user_name"TextBox2.Text)
                
Cmd.Connection.Open()
                
Cmd.ExecuteScalar()
                
Cmd.Connection.Close()
                
Using login As New DataSet()
                    
sda.Fill(login"login")
                    If 
login.Tables(0).Rows.Count <> 0 Then
                        MsgBox
("يجب تغير اسم المستخدم")
                        Exit 
Sub
                    End 
If
                
End Using
            End Using
        End Using
    End Sub
    
'< حفظ المستخدم
    Private Sub saved_Click(sender As Object, e As EventArgs) Handles saved.Click
        Check()
   ' 
هنا يوجد كود الحفظ
  End Sub 
الرد }}}
تم الشكر بواسطة:
#2
(14-06-24, 11:05 PM)moh61 كتب : يوجد لدي كود يقوم بالتحقق من وجود اسم المستخدم بقاعدة البيانات ب sub مستقلة ... اريد عندما اضغط على ذر الحفظ ... والاتصال بال Sub يقوم بالخروج من الذر اذا كان المستخدم موجود


PHP كود :
Private Sub Check()
 
       Dim conn3 As New OleDbConnection(ConfigurationManager.ConnectionStrings("LAUNDRY_SYSTEM.My.MySettings.Laundry_DatabaseConnectionString").ConnectionString)
 
       Using Cmd As New OleDbCommand("SELECT * from login Where user_name = @user_name "conn3)
 
           Cmd.CommandType CommandType.Text
            Using sda 
As New OleDbDataAdapter(Cmd)
 
               Cmd.Connection conn3
                sda
.SelectCommand Cmd
                Cmd
.Parameters.AddWithValue("@user_name"TextBox2.Text)
 
               Cmd.Connection.Open()
 
               Cmd.ExecuteScalar()
 
               Cmd.Connection.Close()
 
               Using login As New DataSet()
 
                   sda.Fill(login"login")
 
                   If login.Tables(0).Rows.Count <> 0 Then
                        MsgBox
("يجب تغير اسم المستخدم")
 
                       Exit Sub
                    End 
If
 
               End Using
            End Using
        End Using
    End Sub
    
'< حفظ المستخدم
    Private Sub saved_Click(sender As Object, e As EventArgs) Handles saved.Click
        Check()
   ' 
هنا يوجد كود الحفظ
  End Sub 


لتحقيق الهدف المطلوب بحيث يتم التحقق من وجود اسم المستخدم في قاعدة البيانات، وإذا كان موجودًا يتم إيقاف تنفيذ عملية الحفظ، يمكنك التعديل على الكود كالتالي:

تعديل Sub Check بحيث يعيد قيمة Boolean تدل على ما إذا كان المستخدم موجودًا أم لا.
استخدام القيمة المعادة من Sub Check في Sub saved_Click لاتخاذ القرار المناسب.
إليك الكود المعدل:
PHP كود :
Private Function Check() As Boolean
    Dim conn3 
As New OleDbConnection(ConfigurationManager.ConnectionStrings("LAUNDRY_SYSTEM.My.MySettings.Laundry_DatabaseConnectionString").ConnectionString)
 
   Using Cmd As New OleDbCommand("SELECT * from login Where user_name = @user_name"conn3)
 
       Cmd.CommandType CommandType.Text
        Using sda 
As New OleDbDataAdapter(Cmd)
 
           Cmd.Connection conn3
            sda
.SelectCommand Cmd
            Cmd
.Parameters.AddWithValue("@user_name"TextBox2.Text)
 
           Cmd.Connection.Open()
 
           Cmd.ExecuteScalar()
 
           Cmd.Connection.Close()
 
           Using login As New DataSet()
 
               sda.Fill(login"login")
 
               If login.Tables(0).Rows.Count <> 0 Then
                    MsgBox
("يجب تغير اسم المستخدم")
 
                   Return True
                End 
If
 
           End Using
        End Using
    End Using
    Return False
End 
Function

' حفظ المستخدم
Private Sub saved_Click(sender As Object, e As EventArgs) Handles saved.Click
    If Check() Then
        Exit Sub
    End If
    ' 
هنا يوجد كود الحفظ
End Sub 

التغييرات الرئيسية:

جعل Sub Check يعيد قيمة من نوع Boolean بحيث يعيد True إذا كان اسم المستخدم موجودًا، وFalse إذا لم يكن موجودًا.
استخدام القيمة المعادة من Sub Check في Sub saved_Click لاتخاذ القرار المناسب بشأن الخروج من Sub إذا كان المستخدم موجودًا.
بهذا الشكل، عندما تضغط على زر الحفظ، سيتم التحقق أولاً من وجود اسم المستخدم، وإذا كان موجودًا، سيتم عرض رسالة ويتم الخروج من Sub دون تنفيذ عملية الحفظ.
غَزة شجرة سنديان لا تنحني، ووردة لا تذبل، وشوكة عصية على الكسر. غزة، دماؤها تنتصر على السيف والسياف.
متغيب لفترة ان اخطأت بحق احد ارجو المسامحة
الرد }}}
تم الشكر بواسطة: ابو روضة , moh61


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [VB.NET] طلب كود vba اكسل يقوم بنسخ خلية من قائمة ثم لصقها في خلية اخرى Faisal_kg 0 366 25-10-24, 09:13 PM
آخر رد: Faisal_kg
  كيف اقوم بحل عدم اتصال فيجوال بيسك بالانترنت جيولوجي مبتدئ 3 486 28-06-24, 05:29 AM
آخر رد: جيولوجي مبتدئ
  كيف اقوم بتحديث بيانات داخل Datagrid عبر Button moh61 5 460 28-06-24, 12:03 AM
آخر رد: Zuhare
  كيف اقوم بتحويل التاريخ من هجري الى ميلادي بال Report Viewer moh61 4 556 22-06-24, 09:33 PM
آخر رد: Kamil
  مشكلة غربية عندما اقوم بالطباعة تطلع معي فاتورة الكاشير صغيرة جدا moh61 3 784 28-10-23, 06:57 PM
آخر رد: moh61
  [VB.NET] كيف اقوم بمنع المستخدم من استخدام الكيبورد وخصوصا مفتاح Print screen Ameenh 0 490 07-10-23, 10:45 PM
آخر رد: Ameenh
  مشكلة عجيبة و غريبة ! عندما اقوم بطباعة فاتورة من Reportveiwer ينطبع التاريخ هجري moh61 2 618 09-09-23, 11:15 AM
آخر رد: alfaiz678
  عندما اقوم بالاستعلام عن تاريخ معين بواسطة SELECT لايقوم بتحديد نفس تاريخ اليوم moh61 1 719 13-08-23, 01:06 PM
آخر رد: تركي الحلواني
  كيف اقوم بالضغط على ذر الويندوز بالكيبورد هل من حل moh61 0 458 01-08-23, 09:45 PM
آخر رد: moh61
  كيف اقوم بقفل الملف الذي يستخدمه احد المستخدمين ابو محمد محمد محمد 8 1,139 21-04-23, 05:58 PM
آخر رد: ابو محمد محمد محمد

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


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