viernes, 11 de junio de 2010

Como saber que servicios estan escuchando en Ubuntu / Linux

Algunas veces necesitamos saber que servicios estan escuchando en nuestro PC, en linux abre un terminal

Esto esta en el menu de aplicaciones.


ya en el terminal ocuparemos el comando netstat.

un poco de teoria, solo para que quede claro que hace el comando, sacado de Wikipedia

"Netstat (network statistics) es una herramienta de línea de comandos que muestra un listado de las conexiones activas de un ordenador, tanto entrantes como salientes. Existen versiones de este comando en varios sistemas como Unix, GNU/Linux, Mac OS X, Windows y BeOS."


El comando Netstat muestra los servicios y convinandolo con grep filtramos solo los que esta escuchando.



Si tu ubuntu no es en español solo cambia ESCUCHAR por LIST y funcionara.

jueves, 20 de mayo de 2010

Como llenar un Combo Box a partir de una tabla





Este ejemplo es una consulta que me hizo llegar el amigo Cesar, espero te sirva.


Bueno suponiendo que tienes la clase ClCONECETARBD la cual debe tener el siguiente codigo:

Imports System
Imports System.Data
Imports System.Data.SqlClient
Public Class ClCONECETARBD
Private dbConnection As SqlClient.SqlConnection
Private dbCommand As SqlClient.SqlCommand
Private dbDataReader As SqlClient.SqlDataReader
Private dbCommandBuilder As SqlClient.SqlCommandBuilder
Private dbDataTable As DataTable
Private dbDataSet As DataSet
Private dbDataAdapter As SqlClient.SqlDataAdapter
' La variable CadenaConexion será la cadena con la que conectaremos a la
' base de datos.
Private CadenaConexion As String
' La variable CadenaSelect será el código SQL que usaremos para acceder a la tabla
' de esa base de datos.
Private CadenaSelect As String
Public Sub Conectar(Optional ByVal CadenaConexion As String = "")
If CadenaConexion = "" Then
CadenaConexion = "Data Source=aessal\erpprod;Initial Catalog=rtcys;Persist Security Info=True;User ID=cyt;Password=cyt;"
End If
Try
dbConnection = New SqlClient.SqlConnection(CadenaConexion)
dbConnection.Open()
Catch e As Exception
MessageBox.Show("Error al crear la conexión:" & vbCrLf & e.Message)
Exit Sub
End Try
End Sub

Public Sub CerrarConexion()
dbConnection.Close()
End Sub
Function extraeTabla(ByVal pTabla As String) As DataTable
dbDataAdapter = New SqlClient.SqlDataAdapter("SELECT * from " & pTabla, dbConnection)
' dbCommandBuilder = New SqlClient.SqlCommandBuilder(dbDataAdapter)
dbDataSet = New DataSet()
dbDataAdapter.Fill(dbDataSet, pTabla)
Return dbDataSet.Tables(0)
End Function
End Class

Agrega un combo al formulario

y el codigo deberia ser el siguiente:

Imports System.Data
Imports System.Data.SqlClient
Public Class Form1
Private clCnn As New ClCONECETARBD
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim dtTabla1 As New DataTable
clCnn.Conectar()
dtTabla1 = clCnn.extraeTabla("Depto")
ComboBox1.DataSource = dtTabla1
ComboBox1.DisplayMember = "NomCor"
ComboBox1.ValueMember = "CodDepto"
'Asingando las propiedades.


End Sub
End Class

Disculpa que no pude darle formato aun pero no he tenido tiempo me comentas si te sirvió.

viernes, 26 de febrero de 2010

Ejecutar un procedimiento almacenado Oracle 10 con VB 6.

Bueno como todo en la programación no se si esta sera la mejor forma pero es la que me funciono despues de probar de varias formas.

declaro la variable en el formulario.

Private cmmProc As New ADODB.Command


En un procedimiento inicializarComando le borro y le vuelvo a ingresar los parametros.

en el procedimiento te pongo ejeomplos de varios tipos de datos y parametro de entrada y salida.

Private Sub inicializarComando()


Dim j As Integer
Set cmmProc = New ADODB.Command
With cmmProc
.ActiveConnection = V_Cnn 'Variable con la conexion abierta
.CommandText = "INTER.GUARDAR_FALLA" 'Con el esquema
.CommandType = adCmdStoredProc
End With
For j = cmmProc.Parameters.Count - 1 To 0 Step -1
cmmProc.Parameters.Delete (j)
Next j
cmmProc.Parameters.Append cmmProc.CreateParameter("P_CODF", adUnsignedBigInt, adParamOutput)
cmmProc.Parameters.Append cmmProc.CreateParameter("P_ID_TIPOACC", adInteger, adParamInput)
cmmProc.Parameters.Append cmmProc.CreateParameter("P_DIRECC", adVariant, adParamInput)
cmmProc.Parameters.Append cmmProc.CreateParameter("P_FECHAINICIO", adBSTR, adParamInput)
cmmProc.Parameters.Append cmmProc.CreateParameter("P_COMENTARIOS", adVariant, adParamInput)
End Sub


y la parte donde lo llamo y cargo los valores de los parametros.
Public Sub cmdNuevo_Click()

inicializarComando
cmmProc("P_CODF") = Null
cmmProc("P_ID_TIPOACC") = Val(cboAccion.BoundText)
cmmProc("P_DIRECC") = Trim(txtDirecc.Text)
cmmProc("P_FECHAINICIO") = txtFechaI.DisplayText + " " + txtHoraI.DisplayText

cmmProc("P_COMENTARIOS") = txtComentarios.Text
cmmProc.Execute
V_llave = cmmProc("P_CODF")

end sub


Bueno espero les sirva, a mi me funciono.

jueves, 23 de julio de 2009

Como ver las tablas de una base de datos de Access con Visual Basic 6.0

Para poder ver las tablas de una base de datos access debes primero agregar estas referencias a tu proyecto .exe



Después de agregar estas referencias en un formulario pega los siguientes controles.

1. un Datagrid.
2. un objeto adodc.
3. un command button.

Ahora para que este ejemplo funcione cree una base de datos llamada control.mdb en la unidad C, con la estructura siguiente:


Crear la conexión al objeto adodc1

Genera la cadena de conexión.


Escoge el proveedor a usar:


Luego la ruta de la base de datos access:



Ahora en la ficha "Origen de los registros" de las propiedades del objeto Adodc1.
pon este query.

SELECT Participantes.idParticipante, Participantes.Participante, Marcadores.fecha, Marcadores.Marcadores
FROM Participantes INNER JOIN Marcadores ON Participantes.idParticipante = Marcadores.IdParticipante

Te quedara asi:


Ahora en la propiedad Datasource del DataGrid selecciona el objeto AdodC1.

y por ultimo en el código del command button pon este código.


Private Sub Command1_Click()
Dim cat As New ADOX.Catalog
Dim tbl As ADOX.Table
Dim col As ADOX.Column

Set cat.ActiveConnection = Adodc1.Recordset.ActiveConnection

For Each tbl In cat.Tables
Debug.Print tbl.Name, tbl.Type
MsgBox tbl.Name
Next

Set col = Nothing
Set tbl = Nothing
Set cat = Nothing
End Sub

Con este ejemplo puedes hacer una función que te indique si cada una de las tablas esta en el recordsource de tu recodrset, y así obtener las tablas de tu recordset.