|
Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.
Mensajes - cpmario
Páginas: 1 ... 13 14 [15] 16 17 ... 26
351
« en: Viernes 24 de Febrero de 2006, 07:38 »
352
« en: Viernes 24 de Febrero de 2006, 02:20 »
Lo que se necesita para para moverse por el DataControl o por código es muy similiar por ejemplo en el código de Sagutxo debes de cambiar todas las referencias del data control por la variable Recordset, en este caso: Data1.Recordset.MoveFirst
colocar algo así Una vez que se mueve la base de datos, entonces cargas los cuadros de texto con la información con: txtMes = !NUM_MES dtpDate = !FECHA txtTipo = !TIPO Etc....
353
« en: Viernes 24 de Febrero de 2006, 01:52 »
Me parece que te debe faltar algo como esto DEConsulta.rsCmdContador.Edit
Antes de DEConsulta.rsCmdContador!numcg = x
354
« en: Viernes 24 de Febrero de 2006, 01:48 »
Elaboré un pequeño proyecto. Consta de una forma con una imagen de fondo, 2 controles de imagen con un circulo rojo y otro amarillo. Los círculos como los que te muestro o cualquier otra imagen GIF la puedes elaborar con un programa de dibujo por ejemplo con Microsoft Photo Editor que viene en el WinXP y establecer el color de fondo como transparente. El código de la forma es muy sencillo. Espero te dé la idea que necesitas.
355
« en: Jueves 23 de Febrero de 2006, 22:40 »
El control Shape no tiene eventos. ME parece que no puedes hacer mucho con este control. Si nos dices cual es tu idea, que deseas hacer con este control, te podrmos ayudar a implementarlo o sugerirte otro tipo de control.
356
« en: Miércoles 22 de Febrero de 2006, 17:59 »
Verifica que la propiedad 'AutoRedraw' del PictureBox sea igual a 'True'
357
« en: Lunes 20 de Febrero de 2006, 21:19 »
La siguiente rutina es para saber si una carpeta existe: Public Function DirExists(sDir As String) As Boolean ' Tests for directory existence On Error Resume Next DirExists = ((GetAttr(sDir) And vbDirectory) <> 0) End Function
La siguiente línea de código elabora una carpeta
358
« en: Lunes 20 de Febrero de 2006, 21:05 »
Modifiqué el programa del que posiblemente tomaste las rutinas que muestras y que se encuentra en PSC. Te lo adjunto, le coloqué una rutina para que elabore una base de datos programáticamente y funciona para lo que deseas. Espero te sea de utilidad.
359
« en: Domingo 19 de Febrero de 2006, 18:01 »
Revisé y modifiqué el código, te lo expongo para que lo revises Private Sub cmdSave_Click() On Error GoTo ErrorcmdSave Dim dbVisitas As Database Dim rsVisitas As Recordset Set dbVisitas = OpenDatabase(App.Path & "\bd1.mdb") Set rsVisitas = dbVisitas.OpenRecordset("VISITA", dbOpenDynaset) With rsVisitas Debug.Print "Registro nuevo: " & !NUM_MES & " " & !Fecha & " " & !AUDITOR _ & " " & !PDV & " " & !COD_ZONA & " " & !ENCARGADO & " " & !COD_EXEPCION _ & " " & !VLR_AJUSTE & " " & !EXCEPCIONES & " " & !ENCARGADO & " " & !TIPO End With With rsVisitas .AddNew !NUM_MES = txtMes !Fecha = dtpDate !TIPO = txtTipo !AUDITOR = txtAuditor !COD_ZONA = txtMostrador & " " & txtZona If chkExep.Value = 0 Then Call MsgBox("NO HAY EXCEPCIONES", vbCritical, "Advertencia") Else !EXCEPCIONES = chkExep.Value !COD_EXEPCION = txtExcep !VLR_AJUSTE = txtVrAjuste End If !PDV = txtPDV !ENCARGADO = txtPDV !COMPROMISO = txtCompro .Update .Bookmark = .LastModified End With Call CleanText rsVisitas.Close dbVisitas.Close Call VisibleFalse Exit Sub ErrorcmdSave: MsgBox Err.Description, vbCritical, App.Title End Sub
Como ya te indicaban en comentarios anteriores, no coloques 'On error resume next' ya que esta es la causa que no se grabe un registro con errores, y tampoco te darás cuenta cual es el error. Por otro lado debes tomar en cuenta que un CheckBox no sirve para manejar campos de Falso/Verdadero, ya que los valores que maneja son 0,1 y 2 y el campo de base de datos dbBoolean maneja 0 y -1 Espero esta información te sea útil.
360
« en: Domingo 19 de Febrero de 2006, 17:37 »
Trata de abrir con algún programa visor de imágenes, para ver si efectivamente la imagen no es válida. Te sugiero revises como se guarda la imagen, por ahí puede estar el problema. El error de imagen no válida, significa que en algunos de los pasos el formato de la imagen se perdió.
361
« en: Sábado 18 de Febrero de 2006, 16:41 »
Lo que dice la ayuda de VB6 No se puede mostrar un formulario no modal cuando se muestra un formulario modal (Error 401)
Cuando se muestra un formulario modal, no puede mostrar otro formulario no modal. Este error tiene la siguiente causa y solución:
Intentó usar el método Show o establecer la propiedad Visible a True en un formulario no modal cuando otro formulario ya se estaba mostrando en forma modal. Utilice la instrucción Unload o el método Hide en el formulario modal antes de intentar usar el método Show en un formulario no modal.
363
« en: Miércoles 15 de Febrero de 2006, 03:01 »
En evento Keypress del TextBox Private Sub Text1_KeyPress(KeyAscii As Integer) KeyAscii = Asc(UCase(Chr$(KeyAscii))) End Sub
364
« en: Miércoles 15 de Febrero de 2006, 02:53 »
En el control ImageList es donde debes colocar las imágenes para que aparezcan en la barra de herramientas. EL VB6 trae un asistente para barra de herramientas, búscalo en el menú 'Complemento'. Es un asistente (Wizard) que te permitirá colocar las imágenes más frecuentemente usadas de la barra de herramientas, en forma sencilla.
365
« en: Jueves 9 de Febrero de 2006, 20:17 »
Para probar este código colócalo en una una forma con botón command Option Explicit Private Sub Command1_Click() MsgBox "Número de archivos: " & CountFiles("C:\WINDOWS\system32") End Sub Function CountFiles(strDir As String) As Long Dim strSpec As String Dim strFile As String Dim lngNumOfFiles As Long If strDir <> "" Then strSpec = strDir + "\*.*" strFile = Dir(strSpec, vbSystem + vbHidden + vbReadOnly + vbArchive) lngNumOfFiles = 1 Do While strFile <> "" strFile = Dir lngNumOfFiles = lngNumOfFiles + 1 Loop CountFiles = lngNumOfFiles - 1 End If End Function
366
« en: Lunes 6 de Febrero de 2006, 23:23 »
Sin necesidad que colocar un condicional Between o fechas No creo que sea posible. Se requiere Between o las fechas.
367
« en: Lunes 6 de Febrero de 2006, 23:18 »
No se cual puede ser la causa, pero te recomiendo revisar las versiones, parece ser que la última versión de Microsoft Jet Database Engine version 3.51 es el 'service pack 3' y que puedes encontrar la descarga en este enlace. http://support.microsoft.com/?id=172733O la descarga directa en este otro: http://download.microsoft.com/download/off...us/jet35sp3.exeRevisa a ver si esto resuelve tu problema. Tratando de instalar en Win98 y en donde haces tu paquete de instalación.
368
« en: Viernes 3 de Febrero de 2006, 21:50 »
UserCode te adjunto los 2 script de Inno Setup que uso para instalar mis programas en DAO uno para DAO 3.51 de Access 97 y otro para DAO 3.6 Access 2000 y que funcionan tanto en win 95, 98, Me, 2000 y XP
Espero te sirvan.
----------------------- Siguen sin funcionar los emoticones en el foro -----------------------
369
« en: Jueves 2 de Febrero de 2006, 20:05 »
El problema que tienes es que basas parte de la programación en verificar que el archivo existe o no. Si el usuario lo toma con el commomdialog es obvio que existe y no es necesario verificar que existe, valga la redundancia. Además de verificar que el archivo exista debes verificar que sea un archivo válido, cargándolo en un cuadro picture.
Si el usuario escoge un archivo que no existe o que no sea válido, se generará un error que debes aprovechar para evitar guardar el archivo erroneo. Este manejo de error es anterior a guardar el archivo de la foto y el registro de la base de datos.
En mi programa si el archivo existe o no tiene error coloco el nombre del archivo en el cuadro de texto (con propiedad visible= false que no ve el usuario y que está enlazado a un datacontrol listo para grabarse en la base de datos) . Y si hay error dejo al cuadro de texto vació y no se graba nada en la base de datos.
------------- Hay problemas en el foro para que se muestren los emoticones :-)
370
« en: Jueves 2 de Febrero de 2006, 07:26 »
Agregando a la respuesta, si deseas saber que extensión tiene un archivo usa este código: Function ExtractExtension(strFilename As String) Dim intBackslash As Integer Dim intPoint As Integer Dim intLenFilename As Integer Dim intTemp As Integer Dim strFname As String On Error GoTo ErrorExtractExtension gblnExistExtension = True strFname = Trim$(strFilename) intLenFilename = Len(strFname) 'Find last \ Do intBackslash = intTemp intTemp = InStr(intBackslash + 1, strFname, "\") Loop Until intTemp = 0 'Find "." Do intPoint = intTemp intTemp = InStr(intPoint + 1, strFname, ".") Loop Until intTemp = 0 'Ext no exist If intPoint < intBackslash Then intPoint = 0 gblnExistExtension = False ElseIf intPoint = 0 And intBackslash = 0 Then gblnExistExtension = False End If If gblnExistExtension = True Then ExtractExtension = "." & Right$(strFname, intLenFilename - intPoint) Else ExtractExtension = "" End If Exit Function ErrorExtractExtension: GenErrorHandler "modFile/ExtractExtension() ", Err.Number, Err.Description End Function
Llamas a esta función con algo parecido a esto: strExtension = ExtractExtension(gstrFullFilename) Y obtienes algo como esto-> ".RTF"
371
« en: Miércoles 1 de Febrero de 2006, 22:33 »
También tengo un programa que guarda fotos en un directorio y en un campo de la base de datos guardo el nombre del archivo. Lo hago en 2 pasos, al agregar un registro nuevo con un botón command tomo la foto y la coloco en el control picture, en un cuadro de texto coloco el nombre del archivo a guardar. En un segundo paso, el nombre de archivo que estaba en el cuadro de texto lo coloco en uno de los campos de la base de datos, y con otro botón command guardo el registro. En caso de existir el error que mencionas, de archivo inválido, no coloco el nombre del archivo en el cuadro de texto. Lo que no muestras es el código que guarda la referencia de la foto y en que momento lo haces. Uso este código para seleccionar y abrir la imagen Private Sub cmdInsertFileFoto_Click() On Error GoTo ErrorcmdInsertFile gstrDialogTitle = "¿En dónde están las Fotografías?" gstrFilename = "" gstrFilter = "Todos los archivos (*.*)|*.*|Imagenes (*.bmp,*.jpg,*.gif)|*.bmp;*.jpg;*.gif|Archivos Bitmap (*.bmp)|*.bmp|Archivos JPG (*.jpg)|*.jpg|Archivos GIP (*.gif)|*.gif" gintFilterIndex = 2 gintDlgAction = 1 'Abrir Call GetWorkingDir 'Obtener directorio de trabajo, del registro Call FileSelecter(gstrFotoWorkDir) ' Llamar commonDialog con el directorio de trabajo gstrFotoWorkDir = gstrWorkDir Call WriteWorkingDir 'Escribir directorio de trabajo, al registro If Not gblnCancel Then Picture2.Picture = LoadPicture(gstrFullFilename) 'si existe error no se ejecuta el código siguiente Picture2.ZOrder vbBringToFront Call Stretchpic(Picture2, picFoto) txtFotoFilename.Text = txtNameID.Text & "@" & lblIDPacID & ".jpg" End If Exit Sub ErrorcmdInsertFile: gstrMsg = "Existe un error al insertar la imagen desde archivo, " & _ vbCrLf & "Error Nº " & Err.Number & " = " & Err.Description & "." MsgBox gstrMsg, vbCritical, gstrAppTitle Exit Sub End Sub
El siguiente código lo uso para abrir o guardar varios tipos de archivos Sub FileSelecter(strWorkingDir As String) Dim blnDirError As Boolean On Error GoTo ErrorFileSelecter gstrFullFilename = "" gblnCancel = False With frmHistoria .cdlConsulta.DialogTitle = gstrDialogTitle .cdlConsulta.Filter = gstrFilter .cdlConsulta.FilterIndex = gintFilterIndex .cdlConsulta.Filename = gstrFilename .cdlConsulta.DefaultExt = gstrDefaultExt .cdlConsulta.CancelError = True blnDirError = True If DirExists(strWorkingDir) Then .cdlConsulta.InitDir = strWorkingDir Else .cdlConsulta.InitDir = FindDocsFolder End If blnDirError = False .cdlConsulta.Action = gintDlgAction gstrFullFilename = .cdlConsulta.Filename End With gstrFilename = ExtractFilename(gstrFullFilename) gstrWorkDir = CurDir Exit Sub ErrorFileSelecter: If blnDirError Then frmHistoria.cdlConsulta.InitDir = FindDocsFolder Resume Next ElseIf Err <> cdlCancel Then GenErrorHandler "modFile/FileSelecter() ", Err.Number, Err.Description Else gblnCancel = True End If Exit Sub End Sub
Algunas de las rutinas no te las coloqué pero si las deseas las escribo, por ejemplo: FindDocsFolder, ExtractFilename
372
« en: Domingo 29 de Enero de 2006, 07:52 »
Te elaboré un pequeño proyecto que muestra lo que deseas.
373
« en: Domingo 29 de Enero de 2006, 00:54 »
374
« en: Jueves 26 de Enero de 2006, 18:35 »
Cierra todo, pero si te quieres asegurar de cerrar todas bases de datos antes de cerrar ventanas usa esto: Sub CloseAllDatabases() ' Close out db objects ' and release all memory ' On Error Resume Next Dim wsObject As Workspace Dim dbObject As Database Dim rsObject As Recordset For Each wsObject In Workspaces For Each dbObject In wsObject.Databases For Each rsObject In dbObject.Recordsets rsObject.Close Set rsObject = Nothing Next dbObject.Close Set dbObject = Nothing Next wsObject.Close Set wsObject = Nothing Next End Sub
Lo uso con DAO, no sé si funciona con ADO.
375
« en: Miércoles 25 de Enero de 2006, 19:54 »
Usa este código Sub UnloadAllForms() Dim Frm As Integer Frm = Forms.Count Do While Frm > 0 Unload Forms(Frm - 1) If Frm = Forms.Count Then Exit Do Frm = Frm - 1 Loop End Sub
Páginas: 1 ... 13 14 [15] 16 17 ... 26
|
|
|