Hay un total de 3030 Preguntas. | << >> |
Pregunta: | 5377 - PROBLEMAS CON FECHAS |
Autor: | Jose |
Hola amigos tengo un problema estoy trabajando con access del officce 97 y haciendo una aplicacion en visual 6, con conexion odbc al llenar el formulario con los datos y al ir a grabar en la base de datos me graba cualquier cosa en la fecha ejemplo 31/01/01 y graba 19/01/2447 reviso las variables y hasta ir a grabar las variable de fecha van correctas, pero al grabar todo mal |
Respuesta: | Miguel Lucero |
Jose si usas un string sql para grabar datos de fechas en la base de datos tenés que hacerlo de la siguiente forma ej. Fecha="31/01/01" SQL="UPDATE <tabla> SET Fecha=#" & format(cdate(fecha),"mm-dd-yyyy") & "#" & " WHERE ..." Fijate como hay que pasarle las fechas entre #..# y con formato en inglés. Espero te sirva |
Pregunta: | 5384 - ACTIVAR CAJA REGISTRADORA |
Autor: | Antonio Alvarez |
Estoy programando un punto de venta y necesito saber como puedo hacer para activar la gabeta de una caja registradora para guardar el dinero y dar el cambio. Alguna Sugerencia Gracias. |
Respuesta: | Alejandro Cepeda Cepeda Pirela |
Hola Antonio, si usas una caja registradora que se conecta a través del Com1 o Com2, puedes utilizar el control MSComm, si no esta visible en la barra de controles, debes agregarlo en el menú Proyecto en la opción Componentes. Este codigo te sera de utilidad. Private Sub Command1_Click() 'Se le asigna el número del puerto MSComm1.CommPort = "1" 'Se realiza la apertura del puerto MSComm1.PortOpen = True 'Se le envía un carácter al puerto MSComm1.Output = "*" 'Según se mientras mas cantidad de caracteres 'le envíes el puerto la gaveta se abre mas 'rápidamente 'Se cierra el puerto MSComm1.PortOpen = False End Sub Antonio cualquier otra pregunta me puedes escribir. |
Pregunta: | 5386 - APARICIÓN ALEATORIA DE FORMULARIOS |
Autor: | Laura Peñaranda Molinero |
Hola. Hace unos días puse una consulta en un foro y como veo que no hay respuesta voy a intentarlo por este medio. se refiere a la APARICION ALEATORIA DE UN CONJUNTO DE FORMULARIOS. Estoy empezando a pensar que no se puede hacer con Visual Basic. Pero la verdad es que me haría mucho falta por que estoy realizando el proyecto de fin de carrera y si no consigo que aparezcan aleatoriamente el codigo del programa se me va a estender muchísimo. He probado con algo como: X = Int ( ( form20 * Rnd ) + 1) para que apareciera un formulario entre el 1º y el veinteavo, guiandome por: X = Int ( ( 20 * Rnd ) + 1) que genera un nº aleatorio entre 1 y 20, pero claro esta función solo acepta números y me da error. Tambien he intentado transformar la variable formulario a una que pudiera utilizar con estas funciones anteriores, pero no lo he conseguido. Voy a seguir probando, por que como quien dice, me es vital. Pero me gustaria, si puede ser , que alguine me dijera si se puede hacer con visual de una manera más o menos sencilla, o bien, si a alguien se le ocurre alguna solución con código. Os agradecería mucho que me dieseis una pista o solución, si es que la hay( y si no decirme, por favor, que no se puede hacer) GRACIAS¡¡¡ |
Respuesta: | el diablo |
ademas de todas la ideas dadas por los demas compañeros debes manejar el objeto ActiveForm (consulta la ayuda de Vb o algún libro o manual para manejar este objeto). Tuve un problema parecido al tuyo y además de variables y nums. aleatorios tuve que utilizar el ActiveForm para controlar que form se visualiza y cual no. Saludos. |
Respuesta: | Jose G. Montalvo |
Puede hacer lo siguiente: X = Int ( ( 20 * Rnd ) + 1) select case x case = 1 form1.show case = 2 form1.show etc |
Respuesta: | Miguel Lucero |
Laura, si entendí bien tu problema podés hacer algo similar a lo siguiente: si X = Int ( ( 20 * Rnd ) + 1) te devuelve un número aleatorio y tus formularios se llaman form1..form20 una forma podría ser la siguiente: 1 dim frm as form 2 dim xnombre as string 3 X = Int ( ( 20 * Rnd ) + 1) 4 xnombre="Form" & Trim(Format(X,"0")) ' Recorrer la colección de formularios 5 for each frm in forms 6 if frm.name=xnombre then 7 frm.show 8 exit for 9 end if 10 next El código no lo he probado porque no tengo el VB a mano pero la idea es generar una variable con el nombre del formulario en forma aleatoria (línea 3 y 4) y luego recorriendo la colección de formularios de la aplicación (5) verificar el nombre del formulario encontrado con el nombre generado aleatoriamente (6), luego por ejemplo mostrarlo (7) Espero te sirva NOTA: los números de línea son solo para aclarar el código |
Respuesta: | Javier |
Laura, No se si te servirá, pero quizás podrías hacer esto (1) Cargar los formularios y dejarlos ocultos algo así como Form2.Show Form3.Show Form2.Hide Form3.Hide Entonces puedes emplear la colección de formularios cargados forms así forms(1).show forms(1).hide En lugar de 1 puedes poner una variable que sea aleatoria. El único problema es que si cierras el formulario y se descarga, entonces deja de estar en esta colección Un saludo Javier |
Pregunta: | 5402 - REPORTE AVANZADO |
Autor: | Olga Cañedo Ramírez |
hola. Ante todo gracias al que me pueda ayudar. Necesito generar un reporte desde visual basic 6, donde se permita seleccionar a los usuarios los campos que se desean imprimir, estoy usando el Datarepeater, ya tengo la interfaz donde se permite hacer esta seleccion de campos y se genera una consulta(query), pero no se como en el datarepeater se le pueda hacer para variar el número de campos que se pueden imprimir, por ejemplo si el usuario decidio que el reporte se genere solo con los campos de nombre del empleado y su sueldo de la tabla de empleados que tiene 10 campos en total, y si al siguiente dìa decide generar otro reporte pero ahora con los campos de nombre del empleado, sueldo, edad, horas trabajadas. espero que me haya explicado. al que haya pasado ya por esto, por favor ayudeme que no se que hacer, acepto soluciones aunque no sea con el datarepeater. saludos |
Respuesta: | Edward Arias |
Lei tu problema rapidito... porque estoy buscando algo en la Web, si conoces Crystal Report...listo! Usando Formulas / Parametros con la seleccion de los campos que desees mostrar, segun sea el query. Bueno, cualquier duda... me escribes... bye |
Pregunta: | 5425 - ABRIR INSTANCIA DE ACCESS CON PASSWORD |
Autor: | Urbandisa Urbandisa |
Como puedo al abrir la instancia de Access pasarle la password a la vez? Ya que puedo abrirla asi: Dim acApp As Access.Application Set acApp = New Access.Application acApp.ProductCode acApp.OpenCurrentDatabase "C:\bd1.mdb" acApp.Visible = False pero no puedo si tiene password porque no se donde pasarle el parametro de la password, ya he estado probando al azar y nada... Gracias por adelantado. Pedro. |
Respuesta: | Gerardo Dávila |
Que ondas Pedro! Bueno, el siguiente código quizás te pueda ayudar a lo que necesitas, ponlo en un botón de apertura de la base de datos: Private Sub Command1_Click() Dim db as Database Set db = OpenDatabase("C:\my documents\basedatos.mdb",false,false,"pwd=MiClave") msgbox("Base de datos abierta") db.close End Sub Por supuesto la instrucción más importante es la tercera, podrás observar que existe un cuarto parámetro con respecto a la instrucción Opendatabase, la cual no es muy documentada y tiene que ver con la clave de acceso, debes escribirla con las comillas tal y como se muestra en el ejemplo, al igual que la palabra reservada pwd. Espero que te sea de utilidad, cualquier cosa, ya tienes mi correo. |
Pregunta: | 5429 - COMO EJECUTO CON VISUALBASIC EL COMANDO PING |
Autor: | Miguel Montiel |
Les agradezco si alguien me puede ayudar como puedo ejecutar el comando ping seguido de una dirección IP en visual basic y ver la ejecución en un formaulario, ya que quiero elaborar un proyecto que me permita monitorear enlaces dedicados atravez de sus IP address asignadas. |
Respuesta: | daniel francisco figueroa aguirre |
Hola miguel. Esta respuesta, la encontre en unos apuntes, pero era para ejecutar comandos en DOS e imprimirlos VB. Lo modifique para que fuera util y asi resolver tu problema. bien aqui va el codigo (Se deben utilizar API de windows). Por la longitud de la respuesta, esta en el archivo resp5429.txt. |
Pregunta: | 5432 - AGREGAR ÍCONO AL LADO DEL RELOJ |
Autor: | Aloysio Gabriel Memmel Almeida |
Hola, quisiera saber como puedo, en VB5, agregar un ícono al lado del reloj, así como el control de volumen, la conección a internet, etc. Si alguien puede ayudarme por favor que me envíe un e-mail. Gracias |
Respuesta: | IVANRES |
O.K. SIN DESMERITAR LA AYUDA DEL AMIGO JOAN, TAMBIEN EXISTEN CONTROLES ACTIVEX QUE TE SIMPLICAN EL TRABAJO SINO ERES AMANTE A LA API DE WINDOWS. http://www.portalvb.com/Cont32/Notificador.zip CHAO... |
Respuesta: | Joan-Baptista Fàbregas Muñoz |
Para eso necesitas utilizar la API de Windows. Hay estas dos paginas Web que te explican detalladamente como hacerlo: http://www.vb-world.net/tips/tip61.html http://www.vbsquare.com/tips/tip178.html Saludos. |
Pregunta: | 5439 - COMO GUARDAR DATOS CONTENIDOS EN UN LABEL DE ACCESS. |
Autor: | Aitor Pliego Rubio |
Estoy haciendo un programa y necesito guardar en una base de datos el contenido de unos cuantos label y poder abrirlos posteriormente desde el programa.¿como podria hacerlo? si es posible responded con un ejemplo.Gracias |
Respuesta: | rolivera |
No comprendo bien tu pregunta,pero si almacenar los labels puedes tener variar forma: 1.- Mandarlo a la configuracion del Windows (Regedit) con SaveSetting y luego recuperarlo con Getsetting EJEMPLO creas el formulariIo en ACCESS Option Compare Database Option Explicit Private Sub Form_Load() Dim obj As Object For Each obj In Controls If TypeOf obj Is Label Then obj.Caption = DoGetLabel(obj.Name) End If Next End Sub Private Sub Form_Unload(Cancel As Integer) Dim obj As Object For Each obj In Controls If TypeOf obj Is Label Then DoSaveLabel obj.Name, obj.Caption End If Next End Sub y creas un modulo con las siguientes funciones: Option Compare Database Option Explicit Function DoSaveLabel(ByVal nLabel As String, ByVal str As String) SaveSetting CurrentDb.Name, nLabel, "DATO", str End Function Function DoGetLabel(ByVal nLabel As String) As String DoGetLabel = GetSetting(CurrentDb.Name, nLabel, "DATO", "") End Function 2.-Crear un archivo de recursos 3.- Grabarlo en una tabla que contenge ID NombreObj CaptionObj |
Respuesta: | rolivera |
No comprendo bien tu pregunta,pero si almacenar los labels puedes tener variar forma: 1.- Mandarlo a la configuracion del Windows (Regedit) con SaveSetting y luego recuperarlo con Getsetting EJEMPLO creas el formulariIo en ACCESS Option Compare Database Option Explicit Private Sub Form_Load() Dim obj As Object For Each obj In Controls If TypeOf obj Is Label Then obj.Caption = DoGetLabel(obj.Name) End If Next End Sub Private Sub Form_Unload(Cancel As Integer) Dim obj As Object For Each obj In Controls If TypeOf obj Is Label Then DoSaveLabel obj.Name, obj.Caption End If Next End Sub y creas un modulo con las siguientes funciones: Option Compare Database Option Explicit Function DoSaveLabel(ByVal nLabel As String, ByVal str As String) SaveSetting CurrentDb.Name, nLabel, "DATO", str End Function Function DoGetLabel(ByVal nLabel As String) As String DoGetLabel = GetSetting(CurrentDb.Name, nLabel, "DATO", "") End Function 2.-Crear un archivo de recursos 3.- Grabarlo en una tabla que contenga ID NombreObj CaptionObj |
Pregunta: | 5440 - ESTADO DE LA IMRESORA EN NT |
Autor: | Alejandro Cepeda Pirela |
Tengo una aplicacion en VB6 que imprime directamente al puerto con Open "LPT1" For OutPut As #1, esto funciona perfectamente en NT. pero como puedo chequear si la impresora se encuentra en linea. |
Respuesta: | A. Z. |
Usa las funciones del archivo winspoll.drv tales como: 1.getprinter. el argumento de salida pPrinter es una tipo de estructura PRINTER_INFO_2, en donde hay un campo que se llama Status. Dicho campo maneja los siguientes valores: Const JOB_STATUS_PAUSED = &H1 Const JOB_STATUS_ERROR = &H2 Const JOB_STATUS_DELETING = &H4 Const JOB_STATUS_SPOOLING = &H8 Const JOB_STATUS_PRINTING = &H10 Const JOB_STATUS_OFFLINE = &H20 Const JOB_STATUS_PAPEROUT = &H40 Const JOB_STATUS_PRINTED = &H80 2.getjob Public Declare Function GetPrinter Lib \"winspool.drv\" Alias \"GetPrinterA\" (ByVal hPrinter As Long, ByVal Level As Long, pPrinter As Any, ByVal cbBuf As Long, pcbNeeded As Long) As Long Public Declare Function GetJob Lib \"winspool.drv\" Alias \"GetJobA\" (ByVal hPrinter As Long, ByVal JobId As Long, ByVal Level As Long, pJob As Byte, ByVal cdBuf As Long, pcbNeeded As Long) As Long Si queres ejemplos, tenes que buscarlos en la RED. Espero que esto te sirva de Luz. |
Pregunta: | 5445 - CONTROL WINSOCK |
Autor: | Eloy Martin Silva Vásquez |
Estoy utilizando el control winsock, y esta vez voy a utilizarlo en la pc de mi casa, pero lo primero que tengo que hacer es instalar una tarjeta de red. mi pregunta es no hay ningun problema si instalo una tarjeta BNC o con conector RJ45, ya que la pc no va ha estar conectada a otra o a un servidor. solo quiero instalar la tarjeta de red, para fines de programación, estudio, y desarrolo, ya que sin tarjeta de red no puedo usar el winsock.? gracias. |
Respuesta: | Rodrigo López |
No se si entendí bien tu pregunta, pero creo que lo que tu quieres es instalar una tarjeta de red para poder usar el control Winsock. Si es así, te aviso que no tienes para qué instalar ninguna tarjeta de red. Si deseas hacer pruebas (programación, estudio y desarrollo) con el control Winsock, puedes crear un cliente y un servidor en un mismo PC y éste puede no estar conectado a ninguna red. Si lo vas a probar en tu PC y no estas conectado a ninguna red, el servidor debe escuchar en la dirección IP 127.0.0.1 (Loop Back) y el cliente debe conectarse también a esta dirección. Eso sí, es necesario que tengas instalado el protocolo TCP/IP en tu equipo. Puedes hacer todo lo que quieras con tus aplicaciones y está garantizado que también te funcionará cuando instales tus programas (clientes y servidores) en una red de verdad, siempre y cuando esté instalado el protocolo TCP/IP en los computadores en donde instalaras tus aplicaciones. Si deseas un ejemplo de un cliente y un servidor usando Winsock, envíame un mail. Espero haber respondido a tu preguna. Chao y Suerte! |
|< << 78 79 80 81 82 83 84 85 86 87 88 >> >| |