(86)resumen visual basic
DESCRIPTION
resumen visual basic ivan ramirez iglesiasTRANSCRIPT
Por: Carlos Vasquez
MANEJO DE ARCHIVOS
Abrir para LecturaOpen Archivo For Input As Numero
Abrir para EscrituraOpen Ruta.Text For Output As Numero
Fin del Archivo BooleanoEOF(Numero)
Largo del Archivo (Cantidad de Caracteres)LOF(Numero)
Leer Linea por LineaWhile Not EOF(Numero)Line Input #Numero, LineaTextoWend
Leer Caracter a CaracterInput(Cantidad, NumeroArchivo)
Leer Todo el Contenidocontenido = Input(LOF(Numero), Numero)
Numero LibreNumero = FreeFile
Guardar ContenidoPrint #Numero, ContenidoArchivo
Escribir contenido, Agregando salto de linea al final y poniendo todos los caracteres (“”)write #1, "Texto"
Cerrar ArchivoClose Numero
Cuadro de Dialogo para GuardarCuadroDialogo.ShowSave
Cuadro de Dialogo para AbrirCuadroDialogo.ShowOpen
Filtro de Cuadro de DialogoCuadroDialogo.Filter = "*.TXT"
Mostrar Archivos de un DirectorioPrivate Sub Directorio_Change()Archivo.Path = Directorio.PathEnd Sub
Mostrar Carpetas de una UnidadPrivate Sub Disco_Change()Directorio.Path = Disco.DriveEnd Sub
Nombre del ArchivoArchivo.FileName
MANEJO DE STRINGS
Salto de Linea1- SaltoDeLinea = Chr(13) & Chr(10)2- SaltoDeLinea = vbCrLf
Buscar un String dentro de OtroResultado = InStr(1, LineaTexto, Busqueda.Text)
Comprar 2 Strings (Diferente -1 Igual 0)StrComp(String1, String2)
Reemplazar Esto por EstOtro en la StringReplace(String, Esto, EstoOtro)
Numero de caracteres de una cadenaLen(String)
MayusculasUCase(String)
MinusculaLCase(String)
Caracteres de Derecha a IzquierdaRight(String, Cantidad)
Caracteres de Izquierda a DerechaLeft(String, Cantidad)
Caracteres desde una posiciónMid(String, Posicion, Cantidad)Mid(String, Posicion)
String a NumeroVal(String)
Numero a StringStr(Numero)
Obtener Codigo ASCII de un CarácterAsc(Caracter)
Obtener Carácter de un Codigo ASCIIChr(Codigo)
OTROS
FechaDate
Cerrar AplicaciónEnd
ARREGLOS
Arreglo (0 – 99)Dim Numeros(100) As Integer
Cambiar Tamaño de Un Arreglo (Se pierden los datos)ReDim Arreglo(N)
FUNCIONES Y PROCEDIMIENTOS
FuncionesFunction Sumar(j As Integer, k As Integer)i = j + kEnd Function
Utilizaciónt = Sumar(4, 3)
ProcedimientoPrivate Sub Sumar (j As Integer, k As Integer)i = j + k End Sub
UtilizaciónSumar j:=10, k:=21
Se utiliza "Optional" para indicar los parametros oipcionalesEJEMPLO:Private Sub Procediminto (x As Double, Optional n As Integer)'instruccionesEnd Sub
BOTONES
Private Sub Boton_Click()End Sub
ComboBox
Valor SeleccionadoCombo.ItemData(Combo.ListIndex)
Agregar DatosCombo.AddItem "Primer Articulo"Combo.ItemData(0) = 1234Combo.AddItem "Segundo Articulo"Combo.ItemData(1) = 5678
DEFINICION DE VARIABLES GLOBALESOption Explicit
CUADROS DE MENSAJESMsgBox(Texto, Tipo, Titulo)Titulo: vbYesNoCancel vbOKCancel vbOKOnly VbYesNoRespuesta: 6 YES 7 NO 2 CANCEL
CUADRO PARA INGRESAR TEXTOtexto = InputBox("Texto", "Titulo", "default", left, top)
CONDICIONALES
IFIf x > y ThenElseEndIf
WHILEWhile (menor < mayor)Wend
BASES DE DATOS
(0) Definir la Conexión y el RecordSet a UtilizarDim Conexion As ADODB.ConnectionDim Record As ADODB.Recordset
(1) Crear Nueva ConexionSet Conexion = New ADODB.Connection
(2) Abrir Conexión, Primero proveedr y luego base de datosConexion.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source = bd.mdb; "
(3) Crear Nuevo RecordSetSet Record = New ADODB.Recordset
(4) Ligar Conexión al RecordsetRecord.ActiveConnection = Conexión
(6) Realizar Consulta SQLRecord.Open "Select * from Alumnos where Edad >= 22 Order By Nombre”
Cantidad de ColumnasCantidaddecolumnas = Record.Fields.Count
Comienzo y Fin del RecordSetRecord.BOFRecord.EOF
Siguiten Registro del Recordset (MoveFirst, MoveLast, MoveNext, MovePreviousRecord.MoveNext
Mostrar Campo de un Registro del RecordSetRecord!Campo
Revisar Todo el RecordSet (Resultados de la consulta)While Not Record.EOFResultado = Resultado & Record!Nombre & " - " & Record!Edad & " - " & Record!Carrera & FindelineaRecord.MoveNextWend
Cerrar el RecordsetRecord.Close
Cerrar la conexion a la base de datosConexion.CloseSet Conexion = Nothing
Verificar Estado de RecordSet (1 Abierto - 0 Cerrado)Record.State
(5) Inicializar el Cursor y LockTypeRecord.CursorType = adOpenKeySetRecord.LockType = adLockOptimistic
(7) Enlazar Cuadro de Texto y Campo de Registro Actual de RecordSetCuadroTexto.DataField = "Campo"Set CuadroTexto.DataSource = Record
Edicion de Registros del Recordset utilizando Enlace a Cuadro de TextoRecord.AddNewRecord.UpdateRecord.Delete
MATERIA TEXTO – DEFINICIONES
DEFICINIONES - BASES DE DATOS
ActiveX Data objets (ado)
Define unn modelo de programacion que provee los elementos necesarios para tener acceso y actualizar una base de datos.
Ado proporciona los mecanismos para realizar las siguientes actividades:
1- conectarse a una red2- especificar un comando para tener acceso a la BD.3- Ejecutar un comando.4- Almacenar las filas de una tabla como respuesta de la ejecucion de comando.5- Actualizar la base de datos-6- Proporcionar un mecanismo para detectar los errores.
Elememtos ADO
Elementos que forman parte de la programacion ADO:
1-Connection: el acceso desde la aplicacion a la BD se realiza por medio de una conexion.La aplicacion puede tener acceso directo a la BD ( sistema de 2 capas ) o en forma indirecta, por medio de un intermediario MS IIS (sistema de 3 capas)
2- Command: Un comando emitido por medio de una conexion pueda agregar, modificar o eliminar los datos de una BD
3- Parametro: los camandos pueden requerir partes variables llamados parámetros que pueden ser modificados antes de generar un comando.
4- RecordSet: si un comando devuelve datos como filas en una tabla, dichas filas son almacenadas en forma local, por medio del recordset. este permite:
- especificar que filas estan disponibles para examinar.- recorrer las filas.- especificar el orden en que se puden recorrer las filas.- agregar, modificar o eliminar filas.- actualizar.- gestionar el estado original del recordset.
5- Field: Una fila recordset consta de uno o mas campos. Considerando el recorset como una tabla de 2 dimenciones, lo campos son considerados como columnas.
6- Error: Los errores pueden no acudir al no poder establecer una conexion, ejecutar un comando o etc..
7- Collection: ado proporciona colecciones, un tipo de objetos que contiene otros objetos de un tipo concreto. Los objetos de coleccion se pueden recuperar con un metodo de coleccion, bien por el nombre,una cadena de trexto o un numero entero.
8- Property: Cada objeto Ado tiene un conjunto unico de propiedades que describen o controlan el comportamiento de objeto.
9- Eventos: Los eventos son notificaciones de que ciertas operaciones estan a punto de suceder o ya han ocurrido.
ADO CONNECTION
Con connection de establece las condiciones necesarias para intercambiar datos. La BD al que se conecta se especifica en una cadena de conexion aunque los parametros especificados de la cadenapueden variar segun el proveedor y la BD. La forma principal en que ADo abre una conexion es por medio del OPEN, la sintaxis en VB para realizar esto es;
Connection.open connection.string, User ID, passwords, Open Options.
Ejemplo: cn.open "provider=Microsoft.set.oledah.oj" & "Data sourse = c:\cursos.mdb ;" &_ "Persist security info=false"
Para cerrar un objeto connection y liberar los recursos del sistema asociados se usa el metodo CLOSE. Al cerrar un objeto, no se elimina de memoria. se puede modificar sus propiedades y abrirlo mas tarde.
Para eliminar un objeto completamente de memoria establezca la variable del objeto a NOTHING
Ejemplo: cn.closeset cn=NOTHING
ADO RECORDSET
Representa todo el conunto de reguistros de una tabla o del resultado de un comando ejecutado.
En cualquier momento, el objeto Recordset solo hace referemncia al registro actual.
Para declarar (crear) objetos Recordset se usa el tipo ADODB.Recordset en la forma:
Dim Rs As ADODB.RecordsetSet Rs = New ADODB.Recordset
Para relacionar un Recordset con un Connection, se hace en la formaRs.Active.Connection = Cn
donde Cn y Rs son las variables para la conexion activa actuaL y el recordset respectivamente.
Para abrir un Recordset, se realiza por medio del metodo Open, con la siguientes sintaxis general.
Recordset.Open Source, ActivConnection, CursorType, Locktype, Options
Ejemplo:
Rs.Open " Select * from Curso"
Cuando se abre un Recordset, el registro actual esta situado en el primer registro, y las propeidades BOF o EOF estan establecidas a FALSE.
Si no hay registro, BOF y EOF son TRUE. Las propiedades BOF y EOF indican el comienzo y el fin del Recordset.
DEFINICIONES – ARCHIVOS
- Archivos ASCII o de Texto Contienen caracteres del codigo ASCII y se pueden leer con editores de texto.
- Archivos Binarios. Contienen la imagen binaria de datos y programas, tal como se encuentran en memoria. No son legibles directamente.
-ARCHIVOS DE ACCESO ALEATORIO
Para abrirlos, se utiliza For Random. Para For Binary el acceso es similar, pero por Byter en lugar de registros.
Open nombre For Random As #numero Len = LongitudRegistro
Leer ArchivosGet #numero, registro, Objeto
Escribir ArchivosPut #numero, registro, objeto
-ARCHIVOS DE ACCESO BINARIOSe procede en forma similar a los archivos de acceso aleatorio. Se trabaja con bytes, en lugar de registros.
Open Nombre For Binary As #archivoGet #archivo, &, datodato = 7Put #archivo, &, datoClose #archivo
EXPLICACION (INGLES) DE adLockOptimistic y CursorType
Setting the CursorType to adOpenKeyset is important because it handles a number of inherent problems for us. This allows us to view fields of the record immediately after updating by opening a dynamic recordset. In this case, the OrderID is assigned as an automatic counter. When an order is created, we need to extract the OrderID immediately so that we can enter the details of the order in another table. The adOpenKeyset allows us to do this: