Foros aprenderaprogramar.com
		Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: anmaroso en 13 de Octubre 2015, 17:26
		
			
			- 
				Hasta hace poco me funcionaba pero no sé que he hecho que ya no funciona y sin el valor de la variable no me deja seguir.
 
 Paso el código por si hay alguna solución.
 
 Public Class FTRANSF_C
 Public vff2 As Date
 Public Const vgf As Date = #1/1/1001#
 Dim strcnn As String = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
 "Data Source=C:\GESTION\GESTION.mdb"
 Private Sub FTRANSF_C_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
 vff2 = FTRANSF.vff
 MsgBox("Fecha seleccionada " & vff2, 1)
 FTRANSF.Close()
 
 vencimiento(vff1:=vff2)
 'DG1.DataSource = dst.Tables("Vencimientos").DefaultView
 'Dim vpi As Integer
 'vpi = DG1.RowCount
 'If vpi = 0 Then
 ' Dim vpt As String
 'Dim vpt1 As String
 ' Dim vpd As Single
 'Dim vpi1 As Integer = 0
 'For i = 1 To vpi
 'vpt = DG1.Rows(vpi1).Cells(1).Value
 '       While DG1.Rows(vpi1).Cells(1) = vpt
 '      End While
 'Next
 'DG1.Name = "Listado de Vencimientos"
 ' DG1.ReadOnly = True
 'DG1.DataSource = dst.Tables("Vencimientos").DefaultView
 'If DataRow = 0 Then 'DG1.RowCount = 0 Then
 'MsgBox("NO HAY REGISTROS")
 'Else
 'MsgBox("Si")
 'End If
 'End If
 End Sub
 
 Private Sub vencimiento(ByVal vff1 As Date)
 vff1 = vff2
 If vff1 > vgf Then
 Dim conexion As OleDb.OleDbConnection = _
 New OleDb.OleDbConnection(strcnn)
 Dim adaptador As OleDb.OleDbDataAdapter = _
 New OleDb.OleDbDataAdapter("SELECT TFACTURASR.VENCIMIENTO, " & _
 "TPROVEEDORES.NOMBRE,TFACTURASR.IMPORTE,TFACTURASR.IMPORTET," & _
 "TFACTURASR.FACTURANE,TFACTURASR.CONCEPTOP,TFCTURASR.FECHAE," & _
 "TFACTURASR.FACTURANR,TFACTURASR.FECHAP " & _
 "FROM TFACTURASR INNER JOIN TPROVEEDORES ON " & _
 "TPROVEEDORES.CLAVE = TFACTURASR.CPROVEEDOR " & _
 "WHERE TFACTURASR.VENCIMIENTO = # " & Format(vff1, "MM/DD/YYYY") & " # " & _
 "AND TFACTURASR.NOPAGAR = 0 AND TFACTURASR.PAGADA = FALSE " & _
 "AND TPROVEEDORES.NOPAGAR = 0 AND TFACTURASR.FPAGO LIKE '" & 4 & "%'" & _
 "ORDER BY TFACTURASR.VENCIMIENTO, TPROVEEDORES.NOMBRE", conexion)
 
 Dim dst As DataSet = New DataSet
 Try
 conexion.Open()
 adaptador.Fill(dst, "Vencimientos")
 DG1.Name = "Listado de Vencimientos"
 'DG1.ReadOnly = True
 DG1.DataSource = dst.Tables("Vencimientos").DefaultView
 If DG1.RowCount = 0 Then
 MsgBox("NO HAY REGISTROS")
 Else
 MsgBox("Si")
 End If
 '  Vencimientos = dst.Tables(0)
 Catch ex As OleDb.OleDbException
 MsgBox("se ha producido una excepción: " + ex.Message, 16, Me.Text)
 Finally
 conexion.Close() 'conexion.Dispose()adaptador.Dispose(dst.Dispose())
 End Try
 End If
 End Sub
 
 Private Sub BS_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BS.Click
 Me.Close()
 End Sub
 
 End Class
 
- 
				Hola ¿a qué variable te refieres? ¿qué es lo que funcionaba y ha dejado de funcionar? ¿qué error te sale?
 
 Saludos
- 
				Hola Mastermind, buenos días.
 
 Me refiero a una variable que está en un formulario y quiero pasar su valor a otro formulario.
 El problema está en que me funcionaba y de repente deja de funcionar.
 El pase de valores de variables entre formularios lo hago entre otros formularios y lo hace bien. Yo creo que el problema está en el FTRANSF_C_Load pero no lo consigo encontrar.
 
 Paso el código por si ven el error.
 
 Del primer formulario
 
 
 Public Class FTRANSF
 Public vff As Date
 Public V1 As Integer
 
 Private Sub FTRANSF_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
 'TODO: esta línea de código carga datos en la tabla 'GESTIONDataSet1.CVFR1' Puede moverla o quitarla según sea necesario.
 Me.CVFR1TableAdapter.Fill(Me.GESTIONDataSet1.CVFR1)
 End Sub
 Private Sub BS_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BS.Click
 Me.Close()
 End Sub
 Private Sub DG1_CellDoubleClick(ByVal sender As  _
 System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) _
 Handles DG1.CellDoubleClick
 vff = DG1.SelectedCells(0).Value
 V1 = DG1.SelectedRows.Count
 If DG1.SelectedRows.Count > 0 Then
 MsgBox("Registros " & V1)
 MsgBox("Fecha seleccionada " & vff)
 End If
 End Sub
 
 Private Sub B2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles B2.Click
 FTRANSF_C.Show()
 End Sub
 End Class
 
 
 Del segundo formulario
 
 
 Public Class FTRANSF_C
 Public vff As Date
 Public V1 As Integer
 Public Const vgf As Date = #1/1/1001#
 Dim strcnn As String = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
 "Data Source=C:\GESTION\GESTION.mdb"
 
 Private Sub FTRANSF_C_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
 
 '    Private Sub FTRANSF_C_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
 Me.vff = FTRANSF.vff
 Me.V1 = FTRANSF.V1
 FTRANSF.Close()
 MsgBox("Fecha seleccionada " & vff, 1)
 MsgBox(V1)
 End Sub
 
 Private Sub BS_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BS.Click
 Me.Close()
 End Sub
 
 Private Sub B2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles B2.Click
 FTRANSF_B.Show()
 End Sub
 End Class
 
 
- 
				Buenos días.
 
 Solución que le he dado: Hacer nuevos formularios y a funcionar.
 
 No entiendo el motivo pero hay que seguir adelante.
 
 Saludos.
- 
				Es raro que te funcionara y te dejara de funcionar sin más... de cualquier forma gracias por indicar cómo lo resolviste. Saludos.