Imports System.Web.UI.WebControls Imports Telerik.Web.UI Imports System.Data.SqlClient Imports System.Configuration Imports Telerik.Web.UI.RadWebControl Public Class SchuelerAdmin Inherits System.Web.UI.Page Private Sub Schueler_InitComplete(sender As Object, e As System.EventArgs) Handles Me.InitComplete End Sub Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load If Not Page.IsPostBack Then Me.chkAlleSchuler.Checked = False Me.chkAlleSchuler.Visible = False Session("Admin") = "True" If Session.Item("Admin") = "True" Then Session("Lehrer") = 0 Load_Admin() Else Session("Lehrer") = 1 End If If Request.QueryString("Schuelernr") <> "" Then Me.chkAlleSchuler.Checked = True Refresh_RadListBox1() selectentry(Me.Request.QueryString("Schuelernr")) refresh_data(Me.Request.QueryString("Schuelernr")) End If End If Get_Lehrername() update_zugeteilt() Me.Form.DefaultButton = Me.btnInsertBeruf.UniqueID RadWindowManager1.Windows.Clear() End Sub Sub update_zugeteilt() Try Dim dh As New clsDatahandling Dim ds As New DataSet ds = dh.Get_Tabledata("SELECT dbo.SchuelerBeruf.BerufNr, dbo.Beruf.Bezeichnung FROM dbo.SchuelerBeruf INNER JOIN dbo.Beruf ON dbo.SchuelerBeruf.BerufNr = dbo.Beruf.Berufnr where schuelerberufnr=" + Me.RadGridSchuelerberuf.SelectedValue.ToString, False, True) Session("Berufnr") = ds.Tables(0).Rows(0).Item(0) Me.RadGridZugeteilt.DataBind() Me.RadGridFreiePlaetze.DataBind() Catch ex As Exception End Try End Sub Protected Sub Load_Admin() Me.SqlDataSource1.SelectCommand = "SELECT [KlasseNr], [Bezeichnung] FROM [Klasse] WHERE aktiv=1" Me.chkAlleSchuler.Visible = True Me.RadComboBox1.DataBind() Me.cbklasse.DataBind() End Sub Protected Sub RadComboBox1_SelectedIndexChanged(sender As Object, e As Telerik.Web.UI.RadComboBoxSelectedIndexChangedEventArgs) Handles RadComboBox1.SelectedIndexChanged Me.RadListBox1.DataBind() Try Me.RadListBox1.SelectedIndex = 0 refresh_data(Me.RadListBox1.SelectedValue) Catch ex As Exception Me.txtname.Text = "" Me.txtvorname.Text = "" Me.txtBemerkung.Text = "" End Try get_Lehrername() End Sub Private Sub Get_Lehrername() Try Dim dh As New clsDatahandling Dim klassenr As Integer = Me.RadComboBox1.SelectedValue Dim ds1 As New DataSet ds1 = dh.Get_Tabledata("SELECT dbo.web_Lehrer.Name+' '+dbo.web_Lehrer.Vorname as Lehrername FROM dbo.Klasse INNER JOIN dbo.web_Lehrer ON dbo.Klasse.Lehrernr = dbo.web_Lehrer.LehrerNr WHERE dbo.Klasse.KlasseNr = " + klassenr.ToString, False, True) Me.RadTextBox1.Text = ds1.Tables(0).Rows(0).Item(0) Catch ex As Exception RadTextBox1.Text = "" End Try End Sub Private Sub refresh_data(ByVal schuelernr As Integer) Dim dh As New clsDatahandling Dim ds As New DataSet ds = dh.Get_Tabledata("select * from schueler where schuelernr=" + schuelernr.ToString, False, True) Me.txtname.Text = ds.Tables(0).Rows(0).Item("name") Me.txtvorname.Text = ds.Tables(0).Rows(0).Item("vorname") Me.txtBemerkung.Text = ds.Tables(0).Rows(0).Item("bemerkung").ToString Me.chkaktiv.Checked = ds.Tables(0).Rows(0).Item("aktiv") = True Me.cbklasse.SelectedValue = ds.Tables(0).Rows(0).Item("Klassenr") Me.cbKlassentyp.SelectedValue = ds.Tables(0).Rows(0).Item("klassentyp") Me.RadGridSchuelerberuf.DataBind() selectentry(schuelernr) 'Me.LblSchuelertyp.Text = "(" + Me.cbKlassentyp.Text + ")" Me.lblLehrer.Text = dh.Get_Lehrer(ds.Tables(0).Rows(0).Item("Klassenr")) Me.txtname.Focus() End Sub Protected Sub RadButton1_Click(sender As Object, e As EventArgs) Handles RadButton1.Click Dim i As Integer i = Me.RadListBox1.SelectedValue Dim dh As New clsDatahandling dh.UpdateTable("schueler", "Name", Me.txtname.Text, True, "schuelernr", Me.RadListBox1.SelectedValue) dh.UpdateTable("schueler", "VorName", Me.txtvorname.Text, True, "schuelernr", Me.RadListBox1.SelectedValue) dh.UpdateTable("schueler", "bemerkung", Me.txtBemerkung.Text, True, "schuelernr", Me.RadListBox1.SelectedValue) If Me.chkaktiv.Checked = True Then dh.UpdateTable("schueler", "Aktiv", 1, False, "schuelernr", Me.RadListBox1.SelectedValue) Else dh.UpdateTable("schueler", "Aktiv", 0, False, "schuelernr", Me.RadListBox1.SelectedValue) End If dh.UpdateTable("schueler", "klassenr", Me.cbklasse.SelectedValue, False, "schuelernr", Me.RadListBox1.SelectedValue) dh.UpdateTable("schueler", "klassentyp", Me.cbKlassentyp.SelectedValue, False, "schuelernr", Me.RadListBox1.SelectedValue) Me.Refresh_RadListBox1() 'Me.RadListBox1.DataBind() Try 'Me.RadListBox1.SelectedIndex = i refresh_data(i) Catch ex As Exception Try Me.RadListBox1.SelectedIndex = 0 refresh_data(Me.RadListBox1.SelectedValue) Catch ex1 As Exception End Try End Try End Sub Private Sub RadListBox1_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles RadListBox1.SelectedIndexChanged refresh_data(Me.RadListBox1.SelectedValue.ToString) End Sub Protected Sub btnInsertBeruf_Click(sender As Object, e As EventArgs) Handles btnInsertBeruf.Click Dim errormessage As String = "" errormessage = Validate_Form() If errormessage <> "" Then Showmessage(1, errormessage) Exit Sub End If Dim dh As New clsDatahandling Try If Me.txtBerufnr.Text <> "" Then Me.cbBeruf.SelectedValue = Me.txtBerufnr.Text Catch ex As Exception 'Me.C1Dialog1.Visible = True Exit Sub End Try Dim key As Integer = dh.Insert_new_record("Schuelerberuf", "Schuelerberufnr") Dim prio As Integer = dh.Get_Last_Schulerberuf_Priority_By_Schuler(Me.RadListBox1.SelectedValue) dh.UpdateTable("Schuelerberuf", "Schuelernr", Me.RadListBox1.SelectedValue, False, "Schuelerberufnr", key) dh.UpdateTable("Schuelerberuf", "Berufnr", Me.cbBeruf.SelectedValue, False, "Schuelerberufnr", key) dh.UpdateTable("Schuelerberuf", "Prioritaet", prio, False, "Schuelerberufnr", key) If Me.txtBerufnr.Text <> "" Then Me.txtBerufnr.Text = "" Me.txtBerufnr.Focus() End If Me.RadGridSchuelerberuf.DataBind() End Sub Private Function Validate_Form() As String Dim s As String = "" If Me.RadListBox1.SelectedValue Is System.DBNull.Value Then If s <> "" Then s = s + "
" s = s + "- Es wurde kein Schüler ausgewählt" End If If Me.RadListBox1.SelectedValue = "" Then If s <> "" Then s = s + "
" s = s + "- Es wurde kein Schüler ausgewählt" End If Try If Me.txtBerufnr.Text <> "" Then Me.cbBeruf.SelectedValue = Me.txtBerufnr.Text If Me.cbBeruf.SelectedValue <> Me.txtBerufnr.Text Then If s <> "" Then s = s + "
" s = s + "- Die eingegebene Berufsnummer ist ungültig" End If End If Catch ex As Exception If s <> "" Then s = s + "
" s = s + "- Die eingegebene Berufsnummer ist ungültig" End Try If s <> "" Then s = "Folgende Fehler sind vorhanden:" + "
" + s Return s End Function Protected Sub RadButton2_Click(sender As Object, e As EventArgs) Handles btnneuerschueler.Click Dim dh As New clsDatahandling Dim i As Integer i = dh.Insert_Schueler(Me.RadComboBox1.SelectedValue, Me.cbKlassentyp.SelectedValue) If i > -1 Then Me.RadListBox1.DataBind() Me.refresh_data(i) End If End Sub Protected Sub selectentry(ByVal nr As Integer) Dim isselected As Boolean = False For Each item As RadListBoxItem In Me.RadListBox1.Items item.Selected = False Next For Each item As RadListBoxItem In Me.RadListBox1.Items If item.Value = nr Then item.Selected = True isselected = True End If Next If Not isselected Then Me.RadListBox1.SelectedIndex = 0 End Sub Private Sub Showmessage(ByVal typ As Integer, ByVal meldung As String) Dim newwindow As New Telerik.Web.UI.RadWindow Session.Item("ErrorMessage") = meldung newwindow.NavigateUrl = "~/UserControls/Dialogbox.aspx?type=" + typ.ToString newwindow.ID = "RadWindow2" newwindow.Skin = "Default" newwindow.VisibleOnPageLoad = True newwindow.AutoSize = True RadWindowManager1.Windows.Clear() RadWindowManager1.Windows.Add(newwindow) End Sub Protected Sub chkAlleSchuler_CheckedChanged(sender As Object, e As EventArgs) Handles chkAlleSchuler.CheckedChanged Refresh_RadListBox1() End Sub Protected Sub Refresh_RadListBox1() If chkAlleSchuler.Checked = True Then Me.SqlDataSource2.SelectCommand = "select Schuelernr, name+' '+vorname as Schuelername from schueler where aktiv=1 order by name, vorname" Else Me.SqlDataSource2.SelectCommand = "select Schuelernr, name+' '+vorname as Schuelername from schueler where aktiv=1 and klassenr=@klassenr order by name, vorname" End If Me.RadListBox1.DataBind() End Sub Protected Sub RadMenu1_ItemClick(ByVal sender As Object, ByVal e As RadMenuEventArgs) Handles RadMenu1.ItemClick Try Dim radGridClickedRowIndex As Integer Dim SchuelerBerufRowIndex As Integer radGridClickedRowIndex = Convert.ToInt32(Request.Form("radGridClickedRowIndex")) SchuelerBerufRowIndex = Convert.ToInt32(Request.Form("SchuelerBeruf")) Select Case e.Item.Text Case "Zuteilen" Dim schuelerberufnr As Integer = Me.RadGridSchuelerberuf.MasterTableView.DataKeyValues(SchuelerBerufRowIndex).Item("SchuelerBerufNr") Dim firmaberufnr As Integer = Me.RadGridFreiePlaetze.MasterTableView.DataKeyValues(radGridClickedRowIndex).Item("FirmaBerufNr") Dim dh As New clsDatahandling dh.Insert_Zuteilung(schuelerberufnr, firmaberufnr, Session("Userid")) Me.RadGridZuteilung.DataBind() Me.RadGridFreiePlaetze.DataBind() End Select Catch ex As Exception End Try End Sub 'RadMenu1_ItemClick Private Sub RadGridZuteilung_ItemDeleted(sender As Object, e As Telerik.Web.UI.GridDeletedEventArgs) Handles RadGridZuteilung.ItemDeleted Me.RadGridFreiePlaetze.DataBind() Me.RadGridZugeteilt.DataBind() End Sub Protected Sub cbBeruf_SelectedIndexChanged(sender As Object, e As Telerik.Web.UI.RadComboBoxSelectedIndexChangedEventArgs) Handles cbBeruf.SelectedIndexChanged Me.txtBerufnr.Text = "" End Sub Protected Sub RadComboBox2_SelectedIndexChanged(sender As Object, e As RadComboBoxSelectedIndexChangedEventArgs) Handles RadComboBox2.SelectedIndexChanged Me.RadListBox1.SelectedValue = Me.RadComboBox2.SelectedValue 'RadListBox1_SelectedIndexChanged(sender, e) refresh_data(Me.RadComboBox2.SelectedValue.ToString) End Sub Protected Sub RadButton2_Click1(sender As Object, e As EventArgs) Handles RadButton2.Click Session("Schuelernr") = Me.RadListBox1.SelectedValue Session("RedirPath") = HttpContext.Current.Request.Url.AbsoluteUri Response.Redirect("~/administration/schuelerreport.aspx") End Sub End Class