PREGUNTAS CONTESTADAS - Visual Basic.NET

 Hay un total de 338 Preguntas.<<  >> 

    Pregunta:  50872 - ¿SELECT DE UN DATASET?
Autor:  Angel Aguilar Díaz
Veamos. Tengo un Dataset el cual ya he rellenado con el metodo FILL, pero ahora lo que quiero es filtrar lo que ya tengo en el Dataset por un campo en concreto mediante una sentencia SQL.

¿Es posible hacer eso?

Saludos y gracias.
  Respuesta:  William Fallas Coto
Lo que debes hacer es usar el objeto de dataview, es excelente para aplicar filtros sobre un dataset.

ver referencia:
http://msdn2.microsoft.com/en-us/library/system.data.dataview.rowfilter.aspx

    Pregunta:  50918 - CODIGO EN CRISTAL REPORT, PARA QUE NO SE PIERDA!!!!
Autor:  Martin Alvarez
Hola haber si alguien puede ayudarme.
tengo una porcion de codigo que quiero poner en el codigo de un reporte que tengo, y que al hacer cambios en el diseño del reporte este codigo no se pierda.
Lo puse en el evento initReport, pero al hacer un arreglo en el diceño , cuando genera nuevamente el codigo lo que coloque dentro del InitReport se pierde.
¿Hay algun lugar o evento donde pueda colocar el codigo una ves y que por mas que haga cambios esto no me borre lo que puse?
estoy desarrollando en .net framework 2.0.
  Respuesta:  Mauricio
hola, probaste colocarlo en la misma carpeta q la base de datos q manejes, luego lo cargas ".crystalreport.rpt" para levantarlo y al migrar la el proyecto no se te pierda

    Pregunta:  50977 - USAR JAVASCRIPT EN .NET
Autor:  John Ledezma
Hola:

Estoy trabajando con puro soft libre(gratis), mi aplicacion esta en .NET
la base de datos esta en MySQL
en cuanto al reporteador, bueno aki es donde me detuve porq no encuentro la manera de llamar los reportes desde la aplicación q estoy desarrollando(VB.NET). Me tope con JasperReport y su Editor iReport, me dan grandiosos resultados a la hora de crear reportes, pero no hallo la forma de llamar estos reportes desde mi aplicacion.

El motivo de la consulta es: JasperReport es para JAVA y sus reportes son llamados por lineas de codigo desde el programa desarrollado en java esto vi en todos los ejemplos q hay en la web....

, creo q tb existe una forma de llamar a los reportes desde .NET usando SCRIPS (javascript), pero aun no se como escribir lineas de codigo dentro de mi apliacion en VB.NET

espero q alguien pueda ayudarme.
  Respuesta:  Eider Mauricio Aristizábal Erazo
coloca esto en el page load para que puedas programar codigo en javascript en tus aplicaciones de .net:

Response.Write("<script languague=javascript>alert('Este es un script en ')</script>");

espero te sirva de algo :)

    Pregunta:  50979 - LLENAR UN DATAGRIDVIEW
Autor:  Elkin Morales Morales
Veamos: necesito saber como llenar un datagridview en el evento load por medio de una base de datos la cual esta hecha en SQL 2000
  Respuesta:  Omar Salvatierra Cedeño
Que tal Elkin, quizas el asunto lo vea sencillo pero te diré la verdad a mi me costo mucho aprenderlo, ya que solo sin una guía es muy complicado, veamos si te sirve lo siguiente:

Imports System.Data.OleDb
Imports System.Data.SqlClient

Public Class ClsReportes
Dim objconexion As OleDbConnection
Dim objcomando As OleDbCommand
Dim dtreader As OleDbDataReader
Public Sub New()
objconexion = New OleDbConnection("Provider=sqloledb.1;initial catalog=nombrebasedatos;data source=.; Integrated security=sspi")
objcomando = New OleDbCommand
dtreader = Nothing
End Sub

Public Sub habilitaconexion()
objconexion.Open()
End Sub

Public Sub CargarGrid(ByRef grid As DataGridView)
Dim mystrsql As String = String.Empty
mystrsql = "SELECT * from mibase"
Dim midataset As DataSet
Dim adaptador As New OleDbDataAdapter
objconexion.Open()
With (objcomando)
.CommandType = CommandType.Text
.CommandText = mystrsql
.Connection = objconexion
End With
adaptador.SelectCommand = objcomando
midataset = New DataSet()
adaptador.Fill(midataset)
grid.DataSource = midataset.Tables(0).DefaultView

objconexion.Close()
GC.ReRegisterForFinalize(objconexion)
GC.ReRegisterForFinalize(objcomando)
GC.Collect()

End Sub

luego en load de la forma haces la referencia a la clase de la siguiente forma

dim objgrid as new clsreportes (este es el nombre de la clase que cree arriba)
objgrid.CargarGrid(datagridview1)

y eso es todo. Al llamar tu funcion en el load de la forma debes enviar como parametro el grid que tienes en tu forma.

Cualquier duda que tengas estoy para ayudarte. Espero te sirva
  Respuesta:  John Led
Hola Elkin:

1ro: Para llenar un datagrid en .net hay mucho material q puedes encontrar en la web.

2do: Para llenar un DataGrid en el Evento LOAD, lo unico q tienes q hacer es:
En modo de diseño seleccionas el formulario en el q esta el DataGrid, en los cuadro de propiedades (ubicado a la derecha) encontraras un boton con el simbolo de un rayo (rayo color amarillo) al hacer click en ese boton podras ver todos los eventos en los q puedes escribir codigo, solo buscas donde dice LOAD y le das enter a continuacion escribes el codigo para llenar el DataGrid.

Espero q te sirva la informacion.

    Pregunta:  50988 - COMO CONSULTAR DESDE UNA COLUMNA DE UN DATAGRIDVIEW
Autor:  Elkin Alberto Morales Morales
UNA AYUDA POR FAVOR: quien pueda colaborarme necesito realizar una consulta desde una columna de un datagridview, no he podido de sifrar el codigo, la consulta es a una base de datos creada en SQL 2000
por favor quien me ayude colaboreme con un codigo bien dinamico
gracias a todos
  Respuesta:  CARLOS URIEL DE JESUS SANCHEZ GONZALEZ
Imports System.Data
Imports System.Data.SqlClient

Public Class ACiudad
Inherits System.Web.UI.Page

#Region " Código generado por el Diseñador de Web Forms "

'El Diseñador de Web Forms requiere esta llamada.
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()

End Sub
Protected WithEvents Label1 As System.Web.UI.WebControls.Label
Protected WithEvents Label2 As System.Web.UI.WebControls.Label
Protected WithEvents txtCiudad As System.Web.UI.WebControls.TextBox
Protected WithEvents Label3 As System.Web.UI.WebControls.Label
Protected WithEvents ddlEstado As System.Web.UI.WebControls.DropDownList
Protected WithEvents Button1 As System.Web.UI.WebControls.Button

'NOTA: el Diseñador de Web Forms necesita la siguiente declaración del marcador de posición.
'No se debe eliminar o mover.
Private designerPlaceholderDeclaration As System.Object

Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN: el Diseñador de Web Forms requiere esta llamada de método
'No la modifique con el editor de código.
InitializeComponent()
End Sub

#End Region

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'Introducir aquí el código de usuario para inicializar la página
Dim con As New SqlConnection
Dim pam1 As SqlParameter
Dim clave As SqlCommand
Dim cmdSelec As SqlCommand
con = New SqlConnection("workstation id=uriel;packet size=4096;user id=sa;initial catalog=Amigo;persist security info=False")
con.Open()
Dim dreader As SqlClient.SqlDataReader
con = New SqlConnection("workstation id=uriel;packet size=4096;user id=sa;initial catalog=Amigo;persist security info=False")
con.Open()
cmdSelec = New SqlCommand("consulta" & control datagridview.propiedad, con)
dreader = cmdSelec.ExecuteReader()
Dim firstrow As Boolean = True
While dreader.Read()
Me.combo.Items.Add(New ListItem(dreader(0).ToString()))
End While
con.close()
End Sub

este codigo hace una consulta en sql y devuelve el resultado en un reader y lo guarda en un combo si necesitas informacion variada lo recomendable es que lo hagas por un procedimiento almacenado
este es un ejemplo

try
Dim par4 As New SqlParameter
Dim par5 As New SqlParameter
Dim par6 As New SqlParameter
Dim par7 As New SqlParameter
Dim da3 As New SqlDataAdapter
da3.SelectCommand = New SqlCommand
da3.SelectCommand.Connection = con
da3.SelectCommand.CommandText = "factu"
da3.SelectCommand.CommandType = CommandType.StoredProcedure
par4 = New SqlParameter("@n", SqlDbType.Int)
par5 = New SqlParameter("@s", SqlDbType.Float)
par6 = New SqlParameter("@i", SqlDbType.Float)
par7 = New SqlParameter("@t", SqlDbType.Float)
par4.Direction = ParameterDirection.Input
par5.Direction = ParameterDirection.Output
par6.Direction = ParameterDirection.Output
par7.Direction = ParameterDirection.Output
par4.Value = (Module1.var2) ' agregar valores
da3.SelectCommand.Parameters.Add(par4)
da3.SelectCommand.Parameters.Add(par5)
da3.SelectCommand.Parameters.Add(par6)
da3.SelectCommand.Parameters.Add(par7)
Dim ds3 As New DataSet
da3.Fill(ds3)
Dim total As Double
Dim iva As Double
Dim subtotal As Double
total = da3.SelectCommand.Parameters("@t").Value()
iva = da3.SelectCommand.Parameters("@i").Value() ' devolucion de parametros
subtotal = da3.SelectCommand.Parameters("@s").Value()
Label15.Text = subtotal
Label16.Text = iva
Label18.Text = total
con.Close()
Catch ex As Exception
End Try

el try es para capturar los errores este codigo ejecuta un procedimiento almacenado en sql recibe parametros y devuelbe otros parametros este codigo esta hecho en microsoft visual studio .net 2003 pro edition
espero que t e sirva si no mandame un email y ya vemos como te ayudo

    Pregunta:  50989 - ERROR AL LLAMAR MDICHILD
Autor:  Sergio Del Toro
Tengo un menú en un formulario MDIParent, desde donde llamo varios formularios o pantallas. En la mayoria funciona bien el llamado, pero en uno de ellos me marca el siguiente error.
"ArgumentException: El formulario especificado como MDIParent para este formulario no es un contenedor MDIContainer. Nombre del parámetro: value"
Este es el codigo que uso para llamar a los formularios:

Select case sender.name

Case "cmdModeloTermico"
Dim frmModeloTermico As New frmModeloTermico
frmModeloTermico.MdiParent = Me
frmModeloTermico.Show()

End Select

Ese case se repite n veces, donde n es el numero de formularios existentes en el proyecto y cambia obviamente el nombre del formulario.
Ayuuuudenme!!!!! Lo necesito!!!! Gracias.
  Respuesta:  Eider Mauricio Aristizábal Erazo
''''Prueba adicionando Me.IsMdiContainer = true
Select case sender.name

Case "cmdModeloTermico"

Me.IsMdiContainer = true
Dim frmModeloTermico As New frmModeloTermico
frmModeloTermico.MdiParent = Me
frmModeloTermico.Show()

End Select

    Pregunta:  50996 - CONTROLES ACTIVEX (OCX)
Autor:  jose manuel bejarano
Hola:
En VB, he utilizado los controles ActiveX (OCX), pero ahora estoy utilizando VB.Net y no se como puedo trabajar con controles similares a los ActiveX. (¿Existen?) He de migrar de VB a VB.Net y tengo un control OCX, que no se como realizar con VB:Net.
Podeis ayudarme.
Gracias.
  Respuesta:  Juan Martin
Existen clases COM, pero los ocx no se generan automaticamente. Pero si te los generas si usas C#

    Pregunta:  51001 - MASCARA DE ENTRADA EN UN TEXTBOX
Autor:  Otoniel Saravia
Hola a todos como puedo hacer en una aplicacion windows forms, que un textbox solo acepte entradas por ejemplo con el formato siguiente:
AB0041012006. Los dos primeros caracteres tienen que ser dos letras.
Estoy utilizando el visual basic .net 2003.

Si alguien sabe como hacerlo, me podria dar una idea. Gracias.
  Respuesta:  Hugo Aristizábal
Que tal.

Básicamente hay dos formas, una un poco rústica, verificando el código ASCII de cada caracter presionado, y otra mucho más "elegante", utilizando expresiones regulares. Me voy a enfocar en la segunda, porque evidentemente va más acorde con el código bien escrito que todos quisiéramos tener. La siguiente función valida si una cadena de texto se ajusta a una expresión regular (se debe utilizar el namespace System.Text.RegularExpressions):

private bool ValidarCampo(string sExpresionRegular, string sValor)
{
// se inicializa la expresión regular
Regex reg = new Regex(sExpresionRegular);

// se valida la expresión contra la información de entradas
return reg.Match(sValor).Success;
}

La expresión regular es una cadena que determina las condiciones que se deben cumplir para el formato de cualquier elemento que se represente mediante texto. Este es un tema que aunque no es complejo, vale la pena mirar de manera más detallada. Por ejemplo, para admitir sólo valores alfanuméricos y espacios, se podría utilizar la siguiente expresión regular:

"^[a-zA-ZñÑáéíóúÁÉÍÓÚ0-9 ]+$"

Y para admitir sólo valores numéricos:

"^[0-9]+$"

Una un poco más compleja, que represente una ruta de red (las rutas de red empiezan con \\, como \\equipo01\documentos)

"^\\{2}([a-z]{1,2})$"

Hay una herramienta gratuita para generar y evaluar expresiones regulares, que se llama Expresso, y la podés descargar de http://www.ultrapico.com/Expresso.htm.

Si te queda alguna duda, con gusto la atenderé.

    Pregunta:  51091 - ALINEAR A LA DERECHA O CENTRO ELEMENTOS DE UN LISTBOX
Autor:  Pablo Vasquez Paredes
SALUDOS gente PROG. hago esta pregunta porque no he encontrado respuesta en otro lado, espero ke aki si.... como dice el titulo: ¿SE PODRA CAMBIAR LA ALINEACION DE LOS ELEMENTOS DE UN LISTBOX, POR EJEMPLO A LA DERECHO O AL CENTRO?. Desde ya agradezco la rpta. bye.
  Respuesta:  Olibert Garcia
Hola me parece que por defecto el listbox no tiene una propiedad que haga lo que dices...
Pero podrias hacer dos cosas:

1. Rellenar con espacios en blanco a la derecha, izquierda o ambos lados para cuando quieres alinear a un lado o centrar. Es decir todos los elementos tendrian la misma longitud de caracteres y dependiendo del tipo de alineacion se completa con espacios en blanco hasta llegar a la longitud establecida como maxima.

2. O puedes usar un DataGriView, formateandolo de la manera correcta quitando encabezados y lineas en el grid podrias llegar a tener una apariencia similar al de un listbox y con su barra de desplazamiento. Y para el alineamiento utilizas su propiedad de columna Alignament.

Saludos!

    Pregunta:  51099 - ERROR 429 "EL COMPONENTE ACTIVEX NO PRUEDE CREAR EL OBJETO"
Autor:  Daniel Cuéllar
Se ha creado una dll en visual Basic .NET, se ha agreado como referencia en Visual Basic 6, en mi pc funciona adecuadamente, al momento de generar los instaladores correspondientes y proceder a instarlo en otro pc me genera un error 429 "El componente ActiveX no pruede crear el objeto", en el otro pc se ha instalado .Net frameWork 1.1 que se que es necesario, pero sin embargo se presenta el problema, por favor me colaboran para establecer que sucede.
  Respuesta:  Jose Manuel Molina Dorador
Hola Daniel.

El problema lo tienes porque no registrar la librería de forma adecuada en cada uno de los equipos.

Para registrarla bien tiene que ser con el comando regasm. He notado que algunas veces aunque tengas instalado el SDK no te instala ésta utilidad, por lo que lo mismo la tienes que bajar de internet.

En el equipo del cliente tienes que grabar la dll y la tlb generada en un directorio y grabar también el RegAsm.exe y RegAsm.exe.config, a no ser que éstos dos comandos estén en una de las carpetas contenidas en PATH de las variables de sistema (cosa que dudo).

Una vez copiadas los ficheros, olvidate del regsvr32 que no es necesario.

Tienes que lanzar el siguiente comando:
regasm [nombredll]..dll /tlb: [nombredll].tlb /codebase

el /codebase es para copiar la dll en otro directorio distinto al de la aplicación, por ejemplo en el System32, si no lo utilizas y la dll no se encuentra en el directorio del ejecutable, te dará el error de automatización.

Espero que te sirva de ayuda.

|<  <<  12 13 14 15 16 17 18 19 20 21 22  >>  >|