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

مشكلة في كود يحتوي على IF

بدأه hemalotfy في 13 أكتوبر 2011 · 6 رد · 735 مشاهدة · في ADO.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

عندي مشكلة مرتبطة بقاعدة IF

لما يتوافق الشرط ينتهى البرنامج على خير

وعندما لا يتوافق الشرط لا يحدث اي شيئ نهائيا في البرنامج

غيرت مكان end if اكثر من مره وعدلت الكود اكثر من مره لكن بدون فائدة

هذا هو الكود

  Dim LastTime As String = Dr("ptime")
        Dim LastType As String = Dr("Type_P")
        Dim XxX As String = "تركيب"
        Dim iResponse As String

        If Dr("Type_P") = XxX Then

            iResponse = MsgBox("اخر حجز " + LastType + " " & vbCrLf & "ميعاد الدخول  " + LastTime + "" & vbCrLf & "هل اضفت ربع ساعة اضافية ؟", vbYesNoCancel + vbExclamation + vbApplicationModal + vbDefaultButton1, "تنبيه هام ")

            Select Case iResponse

                Case vbYes


                    Dr.Close()

                    Cmd.CommandText = " Insert into reg(PCode,Patient_Name,PDate,Ptime,Price,Type_P,P_Note)Values('" & PCode.Text & "' ,'" & Patient_Name.Text & "', '" & PDate.Text & "', '" & Ptime.Text & "', '" & Price.Text & "','" & Type_P.Text & "','" & P_Note.Text & "' )"
                    Cmd.ExecuteNonQuery()



                    MsgBox("تم حفظ البيانات بنجاح  ", MsgBoxStyle.MsgBoxRight + vbOKOnly + vbInformation + vbApplicationModal + vbDefaultButton1, "حفظ")
                    CN.Close()
                    PCode.Text = ""
                    Patient_Name.Text = ""
                    PDate.Text = ""
                    Ptime.Text = ""

                    PDate.Text = ""
                    Price.Text = ""
                    Type_P.Text = ""
                    P_Note.Text = ""

                    Ptime.Enabled = False
                    PDate.Enabled = False
                    Price.Enabled = False
                    Type_P.Enabled = False
                    P_Note.Enabled = False

                Case vbNo

                    Exit Sub

            End Select


            onH = n

            Dr.Close()
        End If
#2

للرفع للاهمية القصوى

المشكلة في جملة if فقط حينما يتوافق الشرط يتم تخزين البيانات وحينما لا يتوافق يخرج البرنامج ولا يتم الحفظ

#3

السلام عليكم ورحمة الله وبركاته.

حابه اساعدك بس ماني متأكدة اذا كان فهمت المشكلة صح !!

عموماً انت كتبت كود الحفظ داخل البلوك تبع الـ IF اذا اختار المستخدم Yes من المسج بوكس.

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

        Dim LastTime As String = Dr("ptime") 
        Dim LastType As String = Dr("Type_P") 
        Dim XxX As String = "تركيب" 
        Dim iResponse As String 

        If Dr("Type_P") = XxX Then 
 iResponse = MsgBox("اخر حجز " + LastType + " " & vbCrLf & "ميعاد الدخول  " 

+ LastTime + "" & vbCrLf & "هل اضفت ربع ساعة اضافية ؟", vbYesNoCancel + 

vbExclamation + vbApplicationModal + vbDefaultButton1, "تنبيه هام ") 

 Select Case iResponse  
                Case vbYes                    
                    Cmd.CommandText = " Insert into reg

(PCode,Patient_Name,PDate,Ptime,Price,Type_P,P_Note)Values('" & PCode.Text 

& "' ,'" & Patient_Name.Text & "', '" & PDate.Text & "', '" & Ptime.Text & "', '" 

& Price.Text & "','" & Type_P.Text & "','" & P_Note.Text & "' )" 
                    Cmd.ExecuteNonQuery()  
                    MsgBox("تم حفظ البيانات بنجاح  ", MsgBoxStyle.MsgBoxRight + vbOKOnly + 

vbInformation + vbApplicationModal + vbDefaultButton1, "حفظ") 
                    CN.Close() 
                    PCode.Text = "" 
                    Patient_Name.Text = "" 
                    PDate.Text = "" 
                    Ptime.Text = "" 
                    PDate.Text = "" 
                    Price.Text = "" 
                    Type_P.Text = "" 
                    P_Note.Text = "" 
                    Ptime.Enabled = False 
                    PDate.Enabled = False 
                    Price.Enabled = False 
                    Type_P.Enabled = False 
                    P_Note.Enabled = False 
                Case vbNo 
                    Exit Sub 
            End Select  
        Else
            'do something else
        End If
              Dr.Close()

((إِنَّ اللَّهَ وَمَلائِكَتَهُ يُصَلُّونَ عَلَى النَّبِيِّ يَا أَيُّهَا الَّذِينَ آمَنُوا صَلُّوا عَلَيْهِ وَسَلِّمُوا تَسْلِيمًا))

#4

شكرا للمساعدة

لكن نفس المشكلة ما تغيرت :(

#5

السلام عليكم ورحمة الله وبركاته .

تأكد انك كتبت الكود المراد تنفيذه في حال لم يتوافق الشرط في بلوك الـ Else.-مكان الكومنت-

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

((إِنَّ اللَّهَ وَمَلائِكَتَهُ يُصَلُّونَ عَلَى النَّبِيِّ يَا أَيُّهَا الَّذِينَ آمَنُوا صَلُّوا عَلَيْهِ وَسَلِّمُوا تَسْلِيمًا))

#6
Rose Muhammed كتب:

السلام عليكم ورحمة الله وبركاته .

تأكد انك كتبت الكود المراد تنفيذه في حال لم يتوافق الشرط في بلوك الـ Else.-مكان الكومنت-

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

شكرا اختي الفاضلة وجزاك الله خير

تم حل المشكلة باضافة كود الحفظ مره اخرى بعد else

  Else
            Dr.Close()
            Cmd.CommandText = " Insert into reg(PCode,Patient_Name,PDate,Ptime,Price,Type_P,P_Note)Values('" & PCode.Text & "' ,'" & Patient_Name.Text & "', '" & PDate.Text & "', '" & Ptime.Text & "', '" & Price.Text & "','" & Type_P.Text & "','" & P_Note.Text & "' )"
            Cmd.ExecuteNonQuery()



            MsgBox("تم حفظ البيانات بنجاح  ", MsgBoxStyle.MsgBoxRight + vbOKOnly + vbInformation + vbApplicationModal + vbDefaultButton1, "حفظ")
            CN.Close()
            PCode.Text = ""
            Patient_Name.Text = ""
            PDate.Text = ""
            Ptime.Text = ""

            PDate.Text = ""
            Price.Text = ""
            Type_P.Text = ""
            P_Note.Text = ""

            Ptime.Enabled = False
            PDate.Enabled = False
            Price.Enabled = False
            Type_P.Enabled = False
            P_Note.Enabled = False
        End If
#7

ياأخي الكريم مشكلتك واضحة من البداية انت قلت للبرنامج في حال اختار المستخدم yes احفظ البيانات

وفي حال no قم بالخروج من الاجراء Exit sub

وفي هذه الحالة لا يقوم بالتخزين لنك لم تخبره بذلك

تزودوا فأن خيرا الزاد التقوى

اللهم انصر اخواننا المسلمين المجاهدين في كل مكان

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