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.

255 lines
10 KiB

Imports System.Web.UI.WebControls
Imports Telerik.Web.UI
Imports System.Data.SqlClient
Imports System.Configuration
Imports Telerik.Web.UI.RadWebControl
Imports System.Web.Configuration
Public Class Schueler
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
End If
If Session.Item("Admin") = "True" Then
Load_Admin()
Else
'Session("Lehrer") = 1
End If
Me.txtname.Enabled = False
Me.txtvorname.Enabled = False
Me.txtBemerkung.Enabled = False
Me.cbklasse.Enabled = False
Me.cbKlassentyp.Enabled = False
Me.RadButton1.Enabled = False
Me.RadButton3.Enabled = False
Me.Form.DefaultButton = Me.btnInsertBeruf.UniqueID
RadWindowManager1.Windows.Clear()
End Sub
Protected Sub Load_Admin()
Me.SqlDataSource1.SelectCommand = "SELECT [KlasseNr], [Bezeichnung] FROM [Klasse] WHERE aktiv=1"
Me.chkAlleSchuler.Visible = True
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)
Update_Status()
Catch ex As Exception
Me.txtname.Text = ""
Me.txtvorname.Text = ""
Me.txtBemerkung.Text = ""
update_status()
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.txtname.Enabled = True
Me.txtvorname.Enabled = True
Me.txtBemerkung.Enabled = True
Me.cbklasse.Enabled = True
Me.cbKlassentyp.Enabled = True
Me.RadButton1.Enabled = True
Me.RadButton3.Enabled = True
Me.txtname.Focus()
update_status()
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
Dim image1 As String = WebConfigurationManager.AppSettings("Imagepath") + "Error.png"
RadWindowManager1.RadAlert(errormessage, 330, 100, "Fehler", "alertCallBackFnError", image1)
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 res As New DataSet
res = dh.Get_Tabledata("Select * from firmaberuf where aktiv=1 and berufnr=" + Me.cbBeruf.SelectedValue.ToString + " and klassenr <= " + Me.cbKlassentyp.SelectedValue.ToString, False, True)
If res.Tables(0).Rows.Count = 0 Then
Dim image1 As String = WebConfigurationManager.AppSettings("Imagepath") + "Error.png"
RadWindowManager1.RadAlert("Der eingegebene Beruf ist bereits vorhanden Bitte überprüfen Sie Ihre Eingaben.", 330, 100, "Fehler", "alertCallBackFnError", image1)
End If
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()
Dim s As String = dh.Verify_Schueler(Me.RadListBox1.SelectedValue)
If s = "Keine Fehler vorhanden." Then
Me.lblstatus.ForeColor = Drawing.Color.Green
Me.lblstatus.Text = "Schüler vollständig erfasst"
Else
Me.lblstatus.Text = s
Me.lblstatus.ForeColor = Drawing.Color.Red
End If
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)
Try
Me.lblSchuelerstatus.Text = dh.Get_Schulerstatus(Me.RadComboBox1.SelectedValue)
Catch
End Try
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
'Protected Sub RadButton2_Click1(sender As Object, e As EventArgs) Handles btnPruefen.Click
' Dim dh As New clsDatahandling
' Showmessage(1, dh.Verify_Schueler(Me.RadListBox1.SelectedValue))
'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 RadButton2_Click2(sender As Object, e As EventArgs) Handles RadButton2.Click
Response.Redirect("~/lehrer/stammdaten.aspx")
End Sub
Protected Sub RadButton3_Click(sender As Object, e As EventArgs) Handles RadButton3.Click
Me.chkaktiv.Checked = False
RadButton1_Click(sender, e)
End Sub
Protected Sub Update_Status()
Try
Dim dh As New clsDatahandling
Me.lblSchuelerstatus.Text = dh.Get_Schulerstatus(Me.RadComboBox1.SelectedValue)
Catch
End Try
End Sub
End Class