You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

301 lines
12 KiB

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 + "<br/>"
s = s + "- Es wurde kein Schüler ausgewählt"
End If
If Me.RadListBox1.SelectedValue = "" Then
If s <> "" Then s = s + "<br/>"
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 + "<br/>"
s = s + "- Die eingegebene Berufsnummer ist ungültig"
End If
End If
Catch ex As Exception
If s <> "" Then s = s + "<br/>"
s = s + "- Die eingegebene Berufsnummer ist ungültig"
End Try
If s <> "" Then s = "Folgende Fehler sind vorhanden:" + "<br/>" + 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