DevTrain Startseite Visual Studio 1 Magazin  
  
  
SUCHEN:  
ARTIKEL ONLINE: 525   

Kategorien
.NET
Datenbanken
Web
XML

Allgemein
Camp
Foren
Events
Persönliche Einstellungen
Registrieren
Prämien Shop
Kontakt
Impressum
Über DevTrain

Autoren



 

Forum: ASP.NET | Thema: RE:Re: Rückgabe Werte aus PopupWebForm | Von: G. Guest ( 13.02.2003 11:28)

Hallo Rene,
hier ist mein Code:
Die Übergabe einer Kundennummer teste ich gerade mit einem UserControl. Deswegen hier jetzt die Übergabe eines Dateinamens. Das Prinzip ist aber das gleiche. Ich möchte erreichen, daß nach der Auswahl der Dateiname ind der Textbox txtKKonzernDatei der aufrufenden Form steht. Die Fehlermeldung erscheint unabhängig davon, ob ich die Form zur Dateiauswahl per Java oder per Server.Transfer öffne.


***Haupform*****************************************
Imports System.Data.OleDb

Public Class Kunde
Inherits PDB.PageBase
Protected WithEvents lblMain1 As System.Web.UI.WebControls.Label
Protected WithEvents ComMenu1 As ComMenu
Protected WithEvents txtKNr As System.Web.UI.WebControls.TextBox
Protected WithEvents txtKName1 As System.Web.UI.WebControls.TextBox
Protected WithEvents rfvPBez As System.Web.UI.WebControls.RequiredFieldValidator
Protected WithEvents txtKName2 As System.Web.UI.WebControls.TextBox
Protected WithEvents txtKStrasse As System.Web.UI.WebControls.TextBox
Protected WithEvents cboK_GID As System.Web.UI.WebControls.DropDownList
Protected WithEvents txtKLKZ As System.Web.UI.WebControls.TextBox
Protected WithEvents txtKPLZ As System.Web.UI.WebControls.TextBox
Protected WithEvents txtKOrt As System.Web.UI.WebControls.TextBox
Protected WithEvents Requiredfieldvalidator1 As System.Web.UI.WebControls.RequiredFieldValidator
Protected WithEvents Requiredfieldvalidator2 As System.Web.UI.WebControls.RequiredFieldValidator
Protected WithEvents lblMessage As System.Web.UI.WebControls.Label
Protected WithEvents txtKKNr As System.Web.UI.WebControls.TextBox
Public ds As New DataSet()
Dim strSQL As String, intKNo As Integer
Dim con As OleDbConnection
Protected WithEvents txtKID As System.Web.UI.WebControls.TextBox
Protected WithEvents txtKKonzernDatei As System.Web.UI.WebControls.TextBox
Protected WithEvents lbtSetFile As System.Web.UI.WebControls.LinkButton
Protected WithEvents LinkButton1 As System.Web.UI.WebControls.LinkButton
Dim ad As OleDbDataAdapter

#Region " Vom Web Form Designer generierter Code "

'Dieser Aufruf ist für den Web Form-Designer erforderlich.
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()

End Sub

Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN: Diese Methode ist für den Web Form-Designer erforderlich
'Verwenden Sie nicht den Code-Editor zur Bearbeitung.
InitializeComponent()
End Sub

#End Region

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
' Hier Benutzercode zur Seiteninitialisierung einfügen
If Not Page.IsPostBack Then
With ComMenu1
.ucDataSource = GetCommands("Kunde")
End With
intkNo = Session("KundenNo")
Call SetStrings()
Call BindControls()
Call SetFocus(txtKNr)
End If
End Sub

Private Sub ComMenu1_click(ByVal sender As System.Object, ByVal e As ComMenu.ComMenuArgs) Handles ComMenu1.MenuClick
'Response.Write(e.Action & " - " & e.URL)
Dim strResult As Integer
With ComMenu1
'Gruppe LinkButton mit Befehlsname "PCommand"
Select Case e.Action
Case "Cancel"
Server.Transfer(e.URL)
Case "Update"
Call UpdateKunde()
Case "Delete"
strResult = DeleteKunde(Convert.ToInt32(txtKID.Text))
'WriteLine(Convert.ToString(strResult) & " Datensatz(e) gelöscht!")
Server.Transfer(e.URL)
End Select
End With
End Sub

Property ChooseKNo()
Get
Return Me.txtKKonzernDatei.Text
End Get
Set(ByVal Value)
Me.txtKKonzernDatei.Text = Value
End Set
End Property

Private Sub SetStrings()
If intKNo = 0 Then
lblMain1.Text = "Neuen Kunden erfassen"
Else
lblMain1.Text = "Kunde " & intKNo & " bearbeiten"
End If
End Sub

Private Sub BindControls()
'Kombifeld laden
With cboK_GID
.DataSource = GetGebiete()
.DataTextField = "GBez"
.DataValueField = "GID"
.DataBind()
End With
If intKNo = 0 Then
'Neuer Satz
Else
'Dataset mit dem Satz des gewählten Kunden erzeugen
ds = GetKunde(intKNo)
DataBind()
If Not IsDBNull(ds.Tables("tblKunde").DefaultView(0).Item("K_GID")) Then
cboK_GID.SelectedIndex = cboK_GID.Items.IndexOf(cboK_GID.Items.FindByValue(ds.Tables("tblKunde").DefaultView(0).Item("K_GID")))
End If
End If
End Sub

Public Function UpdateKunde()
con = New OleDbConnection(GetConnStrStamm())
If txtKID.Text = Nothing Then
ad = New OleDbDataAdapter("SELECT * FROM tblKunden WHERE KID=0", con)
ad.InsertCommand = New OleDbCommand("INSERT INTO tblKunden ( KNr, KKNr, KName1, KName2, KStrasse, KLKZ, KPLZ, KOrt, KKonzernDatei, K_GID) VALUES(?,?,?,?,?,?,?,?,?,?)", con)
ad.InsertCommand.CommandType = CommandType.Text
ad.InsertCommand.Parameters.Add("@KNr", OleDbType.Char, 6, "KNr")
ad.InsertCommand.Parameters.Add("@KKNr", OleDbType.Char, 6, "KKNr")
ad.InsertCommand.Parameters.Add("@KName1", OleDbType.Char, 50, "KName1")
ad.InsertCommand.Parameters.Add("@KName2", OleDbType.Char, 50, "KName2")
ad.InsertCommand.Parameters.Add("@KStrasse", OleDbType.Char, 100, "KStrasse")
ad.InsertCommand.Parameters.Add("@KLKZ", OleDbType.Char, 10, "KLKZ")
ad.InsertCommand.Parameters.Add("@KPLZ", OleDbType.Char, 10, "KPLZ")
ad.InsertCommand.Parameters.Add("@KOrt", OleDbType.Char, 50, "KOrt")
ad.InsertCommand.Parameters.Add("@KKonzernDatei", OleDbType.Char, 255, "KKonzernDatei")
ad.InsertCommand.Parameters.Add("@K_GID", OleDbType.SmallInt, 4, "K_GID")
con.Open()
Dim ds As New DataSet()
ad.Fill(ds, "Kunde")
Dim r As DataRow = ds.Tables("Kunde").NewRow
r("KNr") = txtKNr.Text
r("KKNr") = txtKKNr.Text
r("KName1") = txtKName1.Text
r("KName2") = txtKName2.Text
r("KStrasse") = txtKStrasse.Text
r("KLKZ") = txtKLKZ.Text
r("KPLZ") = txtKPLZ.Text
r("KOrt") = txtKOrt.Text
r("KKonzernDatei") = txtKKonzernDatei.Text
'r("PEinAm") = Convert.ToDateTime(lblPEinAm.Text)
r("K_GID") = cboK_GID.Items(cboK_GID.SelectedIndex).Value
ds.Tables("Kunde").Rows.Add(r)
AddHandler ad.RowUpdated, New OleDbRowUpdatedEventHandler(AddressOf OnRowUpdated)
ad.Update(ds, "Kunde")
RemoveHandler ad.RowUpdated, New OleDbRowUpdatedEventHandler(AddressOf OnRowUpdated)
txtKID.Text = r.Item("KID")
Else
con.Open()
Dim com As OleDbCommand = New OleDbCommand()
com.Connection = con
strSQL = "UPDATE tblKunden SET KNr='" & txtKNr.Text & "', KKNr='" & txtKKNr.Text & "', KName1='" & txtKName1.Text & "', KName2='" & txtKName2.Text & "', KStrasse='" & txtKStrasse.Text & "', KLKZ='" & txtKLKZ.Text & "', KPLZ='" & txtKPLZ.Text & "', KOrt='" & txtKOrt.Text & "', KKonzernDatei='" & txtKKonzernDatei.Text & "', K_GID=" & cboK_GID.Items(cboK_GID.SelectedIndex).Value & " WHERE KID=" & Convert.ToString(txtKID.Text)
com.CommandText = strSQL
Dim AnzDS As Integer
AnzDS = com.ExecuteNonQuery()
End If
con.Close()
End Function

Sub OnRowUpdated(ByVal sender As Object, ByVal e As OleDbRowUpdatedEventArgs)
Dim nid As Long
Dim cmd As OleDbCommand = New OleDbCommand("SELECT @@IDENTITY", con)
If e.StatementType = StatementType.Insert Then
nid = CLng(cmd.ExecuteScalar())
e.Row("KID") = nid
End If
End Sub

Private Sub LinkButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LinkButton1.Click
Server.Transfer("FileDialog.aspx")
End Sub

End Class

*** Dateiauswahl ****************************************
Imports System.IO

Public Class FileDialog
Inherits PDB.PageBase
Protected WithEvents files As System.Web.UI.WebControls.DataList
Protected WithEvents lblHistorie1 As System.Web.UI.WebControls.Label
Public z As Kunde
Protected WithEvents Button1 As System.Web.UI.WebControls.Button
Dim BaseDir As String

#Region " Vom Web Form Designer generierter Code "

'Dieser Aufruf ist für den Web Form-Designer erforderlich.
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()

End Sub

Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN: Diese Methode ist für den Web Form-Designer erforderlich
'Verwenden Sie nicht den Code-Editor zur Bearbeitung.
InitializeComponent()
End Sub

#End Region

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
' Hier Benutzercode zur Seiteninitialisierung einfügen
If Not IsPostBack Then
z = CType(context.Handler, Kunde)
BaseDir = "c:\"
files.DataSource = Directory.GetFiles(BaseDir)
DataBind()
End If
End Sub

Sub files_ItemCommand(ByVal sender As Object, ByVal e As DataListCommandEventArgs) Handles files.ItemCommand
Dim txtFile As TextBox
txtFile = z.FindControl("txtKKonzernDatei")
txtFile.Text = "test"
Dim js As JavaScript = New JavaScript()
js.AppendLine("window.close();")
Me.RegisterStartupScript("Close", js.ToString())
End Sub

End Class

Der Fehler erscheint in dieser Zeile
txtFile = z.FindControl("txtKKonzernDatei")

Gruß
Christian



Antworten
Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!

 Betreff:
 Nachricht: Den Beitrag finden Sie nun unter: http://beta.devtrain.de/foren Die Benutzerdaten und Foreninhalte von beta.devtrain.de und www.devtrain.de sind die selben.
Sie können sich dort sogar per RSS über neue Inhalte informieren lassen.
Bei Problemen bitte direkt Mail an asp [AT] ppedv.de.

 Signatur:

  



Login
Username:


Passwort:






Passwort vergessen?

Building und Connecting Know-how

© Copyright 2003 ppedv AG