عرض مشاركة واحدة
عضو نشيط جدا
تاريخ التسجيل: Jul 2002-
#18 (permalink)  

تقريباً هذا هو الكود الكامل مع إصلاح مايلزم، لكن تبقت مشكلة واحدة معلمة باللون الأحمر، حيث لا يوجد متغير سابق يصفها..

كود:
        'تعريف متغير الاتصال
        Dim Con As SqlClient.SqlConnection = New SqlClient.SqlConnection
        'تعريف نص الاتصال
        Dim ConStr As String = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Integrated Security=True;User Instance=True"
        'اسناد نص الاتصال لمتغير الاتصال
        Con.ConnectionString = ConStr

        'تعريف متغير نسند له جملة ال SQL
        Dim SQLStr As String = ""
        'تعريف الكومند والذي بواسطته سنقوم بتنفيذ جملة السكويل على القاعدة في خطوة لاحقه
        Dim Cmd As SqlClient.SqlCommand = New SqlClient.SqlCommand
        Dim Adap As SqlClient.SqlDataAdapter = New SqlClient.SqlDataAdapter

        'جلب اسم موظف الدعم الفني المتواجد حالياً والذي سيتم تحويل هذا الزبون له
        'جلب الموظفين الاون لاين
        Dim dsEmployeesSessions As New DataSet
        SQLStr = "select ID,EmployeeID from LiveSupportEmployeesSessions where IsOnLine Like 'Y'"
        Cmd.CommandText = SQLStr
        Cmd.Connection = Con
        Con.Open()
        Adap.SelectCommand = Cmd
        Adap.Fill(dsEmployeesSessions)
        Con.Close()

        If dsEmployeesSessions.Tables(0).Rows.Count = 0 Then
            ErrorLabel.Text = "لايوجد موظفين دعم فني متصلين حاليا"
            Exit Sub
        End If


        ViewState("EmployeesSessionsID") = dsEmployeesSessions.Tables(0).Rows(0)(0)
        ViewState("EmployeeIDV") = dsEmployeesSessions.Tables(0).Rows(0)(1)

        Dim IEm As Integer = Nothing
        For IEm = dsEmployeesSessions.Tables(0).Rows.Count - 1 To 0 Step -1

            'جلب عدد المحادثات التي يجريها هذا الموظف الان
            Dim dsConvNumber As New DataSet
            SQLStr = "select LiveSupportConversationsSessions.ID,LiveGuestSupportConversationsSessions.ID from LiveSupportConversationsSessions,LiveGuestSupportConversationsSessions where LiveSupportConversationsSessions.IsActive Like 'Y' and LiveGuestSupportConversationsSessions.IsActive Like 'Y' and LiveSupportConversationsSessions.EmployeeID=" & dsEmployeesSessions.Tables(0).Rows(IEm)(0) & " and LiveGuestSupportConversationsSessions.EmployeeID=" & dsEmployeesSessions.Tables(0).Rows(IEm)(0)
            Cmd.CommandText = SQLStr
            Cmd.Connection = Con
            Con.Open()
            Adap.SelectCommand = Cmd
            Adap.Fill(dsConvNumber)
            Con.Close()

            ViewState("ConvNumber" & IEm) = dsConvNumber.Tables(0).Rows.Count
            ViewState("EmployeesSessionsID" & IEm) = dsEmployeesSessions.Tables(0).Rows(IEm)(0)
            ViewState("EmployeeIDV" & IEm) = dsEmployeesSessions.Tables(0).Rows(IEm)(1)

            If ViewState("ConvNumber" & IEm) < ViewState("ConvNumber" & IEm - 1) Then
                ViewState("EmployeesSessionsID") = dsEmployeesSessions.Tables(0).Rows(IEm)(0)
                ViewState("EmployeeIDV") = dsEmployeesSessions.Tables(0).Rows(IEm)(1)
            End If

        Next

        Dim EmployeesSessionsIDV As Long = ViewState("EmployeesSessionsID")
        Dim EmployeeIDV As Long = ViewState("EmployeeIDV")

        'انشاء ملف المحادثه
        Dim rInt As Random = New Random
        Dim RandomInt As String = rInt.Next(1, 1000000000).ToString

        Dim FileName As String = RandomInt & "-" & Date.Now.ToString("mm-HH-dd-MM-yyyy") & ".htm"
        Dim dsPublicInfo As New DataSet
        'انشاء ملف ووضع فيه معلومات البطاقات
        Dim FPath As String = dsPublicInfo.Tables(0).Rows(0)(1) & "livesupport" & "\" & FileName
        Dim FilseSa As IO.FileStream = IO.File.Create(FPath)
        FilseSa.Close()



        'جلب رقم اخر محادثة تمت في جدول محادثات الزوار
        Dim dsLastConvInGTable As New DataSet
        SQLStr = "select MAX(ID) from LiveGuestSupportConversationsSessions"
        Cmd.CommandText = SQLStr
        Cmd.Connection = Con
        Con.Open()
        Adap.SelectCommand = Cmd
        Adap.Fill(dsLastConvInGTable)
        Con.Close()

        'انشاء اسم عشوائي للمستخدم
        Dim GuestNameV As String = "زائر" & dsLastConvInGTable.Tables(0).Rows(0)(0)


        'زرع معلومات الجلسة الجديدة في قاعدة البيانات
        SQLStr = "insert into LiveGuestSupportConversationsSessions(EmployeesSessionsID,EmployeeID,GuestName,StartSessionTim  e,EndSessionTime,ConversationFileName,IsActive) Values(" & EmployeesSessionsIDV & "," & EmployeeIDV & ",'" + GuestNameV + "','" + Date.Now.ToString("hh:mm:ss - dd/MM/yyyy") + "','0','" + FileName + "','Y')"
        Cmd.CommandText = SQLStr
        Cmd.Connection = Con
        Con.Open()
        Cmd.ExecuteNonQuery()
        Con.Close()


        'جلب المعلومات الموجوده في الملف
        Dim HtmlPageCodeV As String = Nothing
        Dim ExistCodeV As New IO.StreamReader(FPath)
        HtmlPageCodeV = ExistCodeV.ReadToEnd()
        ExistCodeV.Close()

        'اضافة الكود على صفحة المحادثه
        HtmlPageCodeV &= "<html'>"
        HtmlPageCodeV &= "<head>"
        HtmlPageCodeV &= "<META http-equiv='Content-Type' content='text/html; charset=UTF-8'>"
        HtmlPageCodeV &= "</head>"
        HtmlPageCodeV &= "<body>"
        HtmlPageCodeV &= "<br>" & Date.Now.ToString("hh:mm:ss - dd/MM/yyyy")
        HtmlPageCodeV &= "</body></html>"

        'زرع معلومات المحادقه في بداية الملف
        Dim ReadHtmlFileV As New IO.StreamWriter(FPath)
        ReadHtmlFileV.Write(HtmlPageCodeV)
        ReadHtmlFileV.Close()

        'تحويل المستخدم لصفحة المحادثة مع رقم الجلسة
        Response.Redirect("live-conversation.aspx?id=" & SessionIdV)






__________________
بداية للمشاريع التجارية

ASP.NET,ASP 3.0

المدونة الشخصية : asp2asp.com

عدنا والعود أحمد...
asp2asp غير متواجد حالياً   قديم 04-07-2007, 07:32 AM
رد مع اقتباس