Aspx.cs Datei
namespace Wlan_Portal.admincontrols
{
using System;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Web;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using Wlan_Portal.classes;
/// <summary>
/// Zusammendfassende Beschreibung f�r adm_Voucherkategorie.
/// </summary>
public abstract class adm_Voucherkategorie : System.Web.UI.UserControl
{
protected System.Web.UI.WebControls.Button btnSpeichern;
protected System.Web.UI.WebControls.Button btnReset;
protected System.Web.UI.WebControls.TextBox txtbVoucherName;
protected System.Web.UI.WebControls.TextBox txtbMenge;
protected System.Web.UI.WebControls.TextBox txtbPreis;
protected System.Web.UI.WebControls.DropDownList ddlVoucherEinheit;
protected System.Web.UI.WebControls.DropDownList ddlWaehrung;
protected System.Web.UI.WebControls.Label lblFehlerVoucherModul;
protected System.Web.UI.WebControls.Label lblValidationVN;
protected System.Web.UI.WebControls.Label lblValidationVA;
protected System.Web.UI.WebControls.Label lblValidationVP;
protected int x;
//DataGrid
protected System.Web.UI.WebControls.Label lblFehlerMeldung;
protected System.Web.UI.WebControls.DataGrid ddgVoucherTypenUebersicht;
protected System.Web.UI.WebControls.DropDownList ddlAtribute;
protected System.Web.UI.WebControls.TextBox txtbKriterium;
protected System.Web.UI.WebControls.Button btnSuche;
protected string Sortatribut = ""; //SortierAtribut f�r die Sortierung des
DataGrids
protected int Counter=0; //Anzahl der Datens�tze die von der
Abfrage betroffen sind
private void Page_Load(object sender, System.EventArgs e)
{
//DataSource nur einmal binden
if(!Page.IsPostBack)
{
//Source �ber den Aufruf der Methode f�llen
ddgVoucherTypenUebersicht.DataSource =
GetDataSource(this.Sortatribut,"","");
//DataSet f�r das DataGrid binden
ddgVoucherTypenUebersicht.DataBind();
//Datenbankklasse einbinden �ffnen abfragen schlie�en
DatabaseConnection objDB = new DatabaseConnection();
if(!objDB.DatabaseOpen(Application["Server"].ToString(),Application["DBName"].ToString(),Application["DBUser"].ToString(),Application["DBPasswort"].ToString()))
{
lblFehlerVoucherModul.Text = "Fehler beim �ffnen der
Datenbankverbindung! Vorgang abgebrochen.";
}
//Alle VoucherEinheiten auslesen
SqlDataReader myDataReader = objDB.SelectQuery("Select * From
tblRateUnit ORDER BY RateUnitID");
//�berpr�fen ob ReaderObjekt gef�llt ist
if(myDataReader == null)
{
lblFehlerVoucherModul.Text = "Datenbankabfrage verlief nicht
erfolgreich!";
}
else
{
//Einheiten an die DropdownListe binden
while(myDataReader.Read())
{
//DropdownListe f�llen
ListItem myItem = new ListItem();
myItem.Value = myDataReader["RateUnitID"].ToString();
myItem.Text = myDataReader["RateUnit"].ToString();
ddlVoucherEinheit.Items.Add(myItem);
}
}
myDataReader.Close();
//Alle W�hrungen auslesen
myDataReader = objDB.SelectQuery("SELECT * FROM tblCurrency ORDER BY
CurrencyID");
//�berpr�fen ob ReaderObjekt gef�llt ist
if(myDataReader == null)
{
lblFehlerVoucherModul.Text = "Datenbankabfrage verlief nicht
erfolgreich!";
}
else
{
//W�hrungen an die DropdownListe binden
while(myDataReader.Read())
{
//DropdownListe f�llen
ListItem myItem = new ListItem();
myItem.Value = myDataReader["CurrencyID"].ToString();
myItem.Text = myDataReader["Currency"].ToString();
ddlWaehrung.Items.Add(myItem);
}
}
//ReaderObjekt zerst�ren
myDataReader.Close();
if(!objDB.DatabaseClose())
{
lblFehlerVoucherModul.Text = "Fehler beim Schlie�en der
Datenbankverbindung! Vorgang abgebrochen.";
}
}
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: Dieser Aufruf ist f�r den ASP.NET Web
Form-Designer erforderlich.
//
InitializeComponent();
base.OnInit(e);
}
/// Erforderliche Methode f�r die Designerunterst�tzung.
/// Der Inhalt der Methode darf nicht mit dem Code-Editor
ge�ndert werden.
/// </summary>
private void InitializeComponent()
{
this.btnSuche.Click += new System.EventHandler(this.btnSuche_Click);
this.btnSpeichern.Click += new
System.EventHandler(this.btnSpeichern_Click);
this.btnReset.Click += new System.EventHandler(this.btnReset_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void btnReset_Click(object sender, System.EventArgs e)
{
//alle Felder resetten
txtbVoucherName.Text = "";
txtbMenge.Text="";
txtbPreis.Text="";
}
private void btnSpeichern_Click(object sender, System.EventArgs e)
{
//Validierung der Felder durchf�hren, da kein Validation Controll benutzt
werden kann
if(txtbVoucherName.Text=="")
{
lblValidationVN.Visible = true;
lblFehlerVoucherModul.Text = "Sie haben vergessen einen Vouchernamen
einzugeben.";
return;
}
if(txtbMenge.Text=="")
{
lblValidationVA.Visible = true;
lblFehlerVoucherModul.Text = "Sie haben vergessen die Voucher Menge
einzugeben.";
return;
}
if(txtbPreis.Text=="")
{
lblValidationVP.Visible = true;
lblFehlerVoucherModul.Text = "Sie haben vergessen einen Voucher Preis
einzugeben.";
return;
}
//Datenbankklasse einbinden �ffnen einf�gen schlie�en
DatabaseConnection objDB = new DatabaseConnection();
if(!objDB.DatabaseOpen(Application["Server"].ToString(),Application["DBName"].ToString(),Application["DBUser"].ToString(),Application["DBPasswort"].ToString()))
{
lblFehlerVoucherModul.Text = "Fehler beim �ffnen der
Datenbankverbindung! Vorgang abgebrochen.";
}
//Neuen Datensatz speichern
x = objDB.UpdateDeleteQuery("INSERT INTO tblVoucher
(VoucherName,VoucherAmount,VoucherPrice,CurrencyID,RateUnitID) Values('" +
txtbVoucherName.Text.ToString() + "'," + Convert.ToInt32(txtbMenge.Text) + "," +
Convert.ToDouble(txtbPreis.Text) + "," + ddlWaehrung.SelectedItem.Value + "," +
ddlVoucherEinheit.SelectedItem.Value + ")");
if(x < 1)
{
lblFehlerVoucherModul.Text = "Die Speicherung der Daten verlief nicht
erfolgreich!";
}
else
{
//bei erfolgreicher Speicherung Seite aktualisieren
Response.Redirect("default.aspx");
}
}
public object GetDataSource(string Sortatribut,string SelectAttribut, string
SelectValue)
{
//Datenbankklasse einbinden �ffnen abfragen schlie�en
DatabaseConnection objDB = new DatabaseConnection();
if(!objDB.DatabaseOpen(Application["Server"].ToString(),Application["DBName"].ToString(),Application["DBUser"].ToString(),Application["DBPasswort"].ToString()))
{
lblFehlerMeldung.Text = "Fehler beim �ffnen der Datenbankverbindung!
Vorgang abgebrochen.";
}
//Dataset erzeugen da das Paging des DataGrids nicht mit DataReader
arbeiten kann
//DataSet wird �ber Database Klasse erzeugt
DataSet myDataSet = new DataSet();
if(Sortatribut == "")
{
if(SelectAttribut == "" && SelectValue == "")
{
myDataSet = (DataSet) objDB.GetDataSet_Select("SELECT * FROM
qry_Voucheruebersicht ORDER BY VoucherID");
}
else
{
if(SelectAttribut == "VoucherID" || SelectAttribut
=="VoucherAmount" || SelectAttribut == "VoucherPrice")
{
myDataSet = (DataSet) objDB.GetDataSet_Select("SELECT * FROM
qry_Voucheruebersicht WHERE " + SelectAttribut + " = " + SelectValue);
}
else
{
myDataSet = (DataSet) objDB.GetDataSet_Select("SELECT * FROM
qry_Voucheruebersicht WHERE " + SelectAttribut + " = '" + SelectValue + "'");
}
}
}
else
{
myDataSet = (DataSet) objDB.GetDataSet_Select("SELECT * FROM
qry_Voucheruebersicht ORDER BY " + Sortatribut.ToString());
}
if(myDataSet == null)
{
lblFehlerMeldung.Text = "Fehler bei der Erzeugung des DataSets";
}
//Anzahl der betroffenden Datens�tze ermitteln
this.Counter = (int) myDataSet.Tables[0].Rows.Count;
if(!objDB.DatabaseClose())
{
lblFehlerMeldung.Text = "Fehler beim Schlie�en der
Datenbankverbindung! Vorgang abgebrochen.";
}
return(myDataSet);
}
public void DataGrid_IndexChange(object sender, DataGridPageChangedEventArgs e)
{
//diese Methode bindet die Source erneut an das DataGrid mit den
ver�nderten Inhalt
ddgVoucherTypenUebersicht.CurrentPageIndex = e.NewPageIndex;
ddgVoucherTypenUebersicht.DataSource =
GetDataSource(this.Sortatribut,"","");
ddgVoucherTypenUebersicht.DataBind();
}
public void DataGrid_Sort(object sender,DataGridSortCommandEventArgs e)
{
//diese Methode bindet die Source erneut an das DataGrid mit den
ver�nderten Inhalt
this.Sortatribut = e.SortExpression.ToString();
ddgVoucherTypenUebersicht.DataSource =
GetDataSource(this.Sortatribut,"","");
ddgVoucherTypenUebersicht.DataBind();
}
public void Count_Records(object sender,DataGridItemEventArgs e)
{
if(e.Item.ItemType == ListItemType.Footer)
{
e.Item.Cells[0].Text= "Anzahl";
e.Item.Cells[1].Text = this.Counter.ToString();
e.Item.Cells[2].Text ="Datens�tze";
}
if(e.Item.ItemType == ListItemType.Item)
{
Button myButton = (Button) e.Item.Cells[6].Controls[0];
myButton.CssClass = "ButtonFormular";
myButton.CausesValidation="False";
}
if(e.Item.ItemType == ListItemType.Pager)
{
e.Item.Cells[0].Text = "Seite: ";
}
}
public void DataGrid_Edit(object sender, DataGridCommandEventArgs e)
{
ddgVoucherTypenUebersicht.EditItemIndex = e.Item.ItemIndex;
//Noch einmal die Datenquelle an das Datagrid binden, damit die Textboxen
gef�llt werden
ddgVoucherTypenUebersicht.DataSource =
GetDataSource(this.Sortatribut,"","");
ddgVoucherTypenUebersicht.DataBind();
}
public void DataGrid_Cancel(object sender, DataGridCommandEventArgs e)
{
ddgVoucherTypenUebersicht.EditItemIndex = -1;
//Noch einmal die Datenquelle an das Datagrid binden --> Refresh
ddgVoucherTypenUebersicht.DataSource =
GetDataSource(this.Sortatribut,"","");
ddgVoucherTypenUebersicht.DataBind();
}
public void DataGrid_Update(object sender, DataGridCommandEventArgs e)
{
//Alle Variablen auslesen die ge�ndert sein k�nnten
//VoucherID
int VoucherID = Convert.ToInt32(e.Item.Cells[0].Text);
//VoucherName
TextBox myTextBox = (TextBox) e.Item.Cells[1].Controls[0];
string VoucherName = myTextBox.Text.ToString();
//VoucherGr��e
TextBox myTextBox2 = (TextBox) e.Item.Cells[2].Controls[0];
int VoucherAmount = Convert.ToInt32(myTextBox2.Text);
//VoucherPrice
TextBox myTextBox3 = (TextBox) e.Item.Cells[4].Controls[0];
double VoucherPrice = Convert.ToDouble(myTextBox3.Text);
//Eintrag in der DB updaten
//Datenbankklasse einbinden �ffnen abfragen schlie�en
DatabaseConnection objDB = new DatabaseConnection();
if(!objDB.DatabaseOpen(Application["Server"].ToString(),Application["DBName"].ToString(),Application["DBUser"].ToString(),Application["DBPasswort"].ToString()))
{
lblFehlerVoucherModul.Text = "Fehler beim �ffnen der
Datenbankverbindung! Vorgang abgebrochen.";
}
//Eintrag updaten
string SQL = "UPDATE tblVoucher SET VoucherName = '" + VoucherName + "',
VoucherAmount= " + VoucherAmount + ", VoucherPrice=" + VoucherPrice + " WHERE
VoucherID=" + VoucherID;
if(objDB.UpdateDeleteQuery(SQL)== 0)
{
lblFehlerMeldung.Text = "Der Datensatz konnte nicht gespeichert
werden.";
}
if(!objDB.DatabaseClose())
{
lblFehlerVoucherModul.Text = "Fehler beim Schlie�en der
Datenbankverbindung! Vorgang abgebrochen.";
}
//DataGrid aktualisieren
ddgVoucherTypenUebersicht.EditItemIndex = -1;
//Noch einmal die Datenquelle an das Datagrid binden --> Refresh
ddgVoucherTypenUebersicht.DataSource =
GetDataSource(this.Sortatribut,"","");
ddgVoucherTypenUebersicht.DataBind();
}
private void btnSuche_Click(object sender, System.EventArgs e)
{
//Wenn kein Kriterium angegeben wurde
if(txtbKriterium.Text == "")
{
lblFehlerMeldung.Text = "Sie haben vergessen ein Suchkriterium
anzugeben.";
return;
}
//PageIndex neusetzen
ddgVoucherTypenUebersicht.CurrentPageIndex = 0;
//DataSource neubilden mit selektierten Werten von der Suche
ddgVoucherTypenUebersicht.DataSource =
GetDataSource(this.Sortatribut,ddlAtribute.SelectedItem.Value.ToString(),txtbKriterium.Text.ToString());
ddgVoucherTypenUebersicht.DataBind();
}
}
}
-----Urspr�ngliche Nachricht-----
Von: Joerg Uth [mailto:[EMAIL PROTECTED]]
Gesendet: Donnerstag, 6. Februar 2003 15:38
An: [EMAIL PROTECTED]
Betreff: RE: [Asp.net] DataGrid Probleme
wenigstens ein paar ausz�ge,
stellt sich die Frage erzeugst du das DataGrid statisch in der .aspx oder
dynamisch in der aspx.cs?
J�rg
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On
Behalf Of A-Schubert
Sent: Thursday, February 06, 2003 3:08 PM
To: [EMAIL PROTECTED]
Subject: AW: [Asp.net] DataGrid Probleme
Soll ich den ganzen Quelltext senden?
Ich kann ja gerne meinen Quelltext als Anhang mitsenden,
aber das ist glaube ich verboten.
-----Urspr�ngliche Nachricht-----
Von: Joerg Uth [mailto:[EMAIL PROTECTED]]
Gesendet: Donnerstag, 6. Februar 2003 15:08
An: [EMAIL PROTECTED]
Betreff: RE: [Asp.net] DataGrid Probleme
Ohne Code kann man hier nur raten.
J�rg
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On
Behalf Of A-Schubert
Sent: Thursday, February 06, 2003 2:56 PM
To: [EMAIL PROTECTED]
Subject: AW: [Asp.net] DataGrid Probleme
Der Ordner und das Scriptfile sind vorhanden.
Daran kann es also nicht liegen. ;(
Trotzdem Danke
-----Urspr�ngliche Nachricht-----
Von: Joerg Uth [mailto:[EMAIL PROTECTED]]
Gesendet: Donnerstag, 6. Februar 2003 14:58
An: [EMAIL PROTECTED]
Betreff: RE: [Asp.net] DataGrid Probleme
Sieh mal nach ob dein RootWeb einen Ordner aspnet_client hat.
wwwroot\aspnet_client\system_web\1_0_3705_288
Dort liegen n�mlich die ben�tigten js, wenn nicht dann kommt daher der
Fehler.
J�rg
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On
Behalf Of A-Schubert
Sent: Thursday, February 06, 2003 2:42 PM
To: [EMAIL PROTECTED]
Subject: [Asp.net] DataGrid Probleme
Folgendes Problem:
Ich habe in meinen DataGrid eine EditCommandColumn. Als Button Typ habe ich
Linkbutton genommen.
Soweit klappt alles und alle Methoden werden auch bei den verschiedenen
LinkButtons korrekt aufgerufen, au�er
bei dem Update Button.
Da passiert gar nichts, weil sofort ein JavaScript Fehler auftritt wenn ich
ihn dr�cke.
In der Meldung steht irgendwas von Page_Validators ist undefiniert.
Das muss also irgendwas damit zu tun haben, dass das DataGrid automatisch
eine Validation durchf�hrt wenn man updatet.
Was kann ich da machen?
Au�erdem w�rde ich gerne wissen wie man diesen Buttons, wenn man Pushbutton
w�hlt ein Stylesheet geben kann?
Vielen Dank
Mit freundlichen Gr��en
Andr� Schubert
T-Systems Nova GmbH
Entwicklungszentrum Berlin
Hausanschrift: Wittestr. 30H 13509 Berlin
Telefon: (0 30) 4 35 77-7881
E-Mail: [EMAIL PROTECTED]
Internet: http://www.t-systems.com
_______________________________________________
Asp.net mailing list
[EMAIL PROTECTED]
http://www.glengamoi.com/mailman/listinfo/asp.net
_______________________________________________
Asp.net mailing list
[EMAIL PROTECTED]
http://www.glengamoi.com/mailman/listinfo/asp.net
_______________________________________________
Asp.net mailing list
[EMAIL PROTECTED]
http://www.glengamoi.com/mailman/listinfo/asp.net
_______________________________________________
Asp.net mailing list
[EMAIL PROTECTED]
http://www.glengamoi.com/mailman/listinfo/asp.net
_______________________________________________
Asp.net mailing list
[EMAIL PROTECTED]
http://www.glengamoi.com/mailman/listinfo/asp.net
_______________________________________________
Asp.net mailing list
[EMAIL PROTECTED]
http://www.glengamoi.com/mailman/listinfo/asp.net