Hay un total de 3030 Preguntas. | << >> |
Pregunta: | 18420 - COMO EJECUTAR Y RESCATAR CAMPOS DE UN STOREPROCEDURE EN VB6 |
Autor: | Christian Campillay |
hola mi nombre es Christian y tengo el siguiente problema, necesito ejecutar un procedimiento almacenado y luego captar el resultado del procedimiento, en el fondo los campos que este me entregue, si alguien puede ayudarme se lo agradeceria. |
Respuesta: | Mauricio Leyzaola |
A mi me funciona (con SQL Server 7) lo siguiente:
Private Function AsignaConsecutivoEntradaSalida(UnaEntrada As clsEntradaSalida) As Boolean Dim sSQL As String Dim Rs As New ADODB.Recordset sSQL = "SPConsecutivoEntradasSalidas " & UnaEntrada.TipoEntradaSalida & ", " & UnaEntrada.AlmacenId Rs.ActiveConnection = ADOQuery.ConnectionString Rs.Open sSQL EstaEntrada.Anio = Rs(0) EstaEntrada.NoDocumento = Rs(1) If Not EsValidoElNoDocumento(EstaEntrada) Then Call AsignaConsecutivoEntradaSalida(EstaEntrada) Set Rs = Nothing End Function Creo que el truco está en hacer un select por cada valor que desees que el stored procedure te devuelva. He intentado con parámetros de tipo Output y tambien con el engorroso método Parameters de ADO, pero ambos sin éxito. Este es el stored procedure que llamo desde el código de arriba: /* Entradas = 0; Salidas =1 */ CREATE PROCEDURE SPConsecutivoEntradasSalidas @EsEntrada TINYINT, @AlmacenId SMALLINT AS DECLARE @AnioActual SMALLINT, @UltimoAnio SMALLINT, @UltimoDocumento INT /* Obtener el año actual */ SELECT @AnioActual = DATEPART (yyyy,GETDATE()) /* Obtener el ultimo año de la EntradaSalida */ SELECT @UltimoAnio = ISNULL (MAX(Anio),0) FROM EntradaSalida WHERE EsEntrada = @EsEntrada AND Almacen_Id = @AlmacenId IF @UltimoAnio < @AnioActual BEGIN SELECT @UltimoAnio = @AnioActual SELECT @UltimoDocumento = 0 END ELSE BEGIN SELECT @UltimoDocumento = ISNULL (MAX(NoDocumento),0) FROM EntradaSalida WHERE EsEntrada = @EsEntrada AND Almacen_Id = @AlmacenId END SELECT @UltimoDocumento = @UltimoDocumento + 1 SELECT @UltimoAnio, @UltimoDocumento GO Espero que sirva. Suerte. |
Pregunta: | 18433 - COMO MANDAR UNA BD A OTRA POR E-MAIL |
Autor: | Cesar Jimenez Vazquez |
tengo una computadora(1) donde se encuentra la base de datos central-en acces- y otra computadora(2) donde esta una copia de la base de datos.
y requiero que me envien a la computadora(1) la informacion capturada en la base de datos de la computadora(2), via e-mail, Se puede?. O que me recomiendan?. por ejemplo si en lugar de tenre una copia de la bd, puedo utilizar excel y luego de ahi mandarlo y subirlo a la bd central? si alguien me puede ayudar, se lo agradecere mucho, es urgente. gracias de antemano. |
Respuesta: | SuNcO |
No solo via email se puede, tambien directamente, esto se hace con el control WinSock, ya sabiendo enviar datos con el, sol oes cuestion de ingeniarselas para hacer lo ke tu ocupas
Chekate www.chakasteam.n3.net/winsock.html Espero ke te sirva |
Pregunta: | 18435 - ENLAZAR DATAGRID CON ADO |
Autor: | Marcelo Villena |
Hola amigos
Estoy haciendo un trabajo y necesito con urgencia si alguien me puede orientar como enlazar el control DATAGRID con un recordset de ADO. No se lo que estoy haciendo mal lo ,que probe fue lo siguiente: ' La conexion se llama cn y ya esta abierta dim reg as recordset set reg = new recordset reg.open "select * from clientes", cn, adOpenDynamic, adLockReadOnly set datagrid1.datasource = reg datagrid1.refresh 'lo ejecuto y no pasa nada y me da el error de que la clase no admite este tipo de automatizacion Cualquier pista para orientarme desde ya agradecido. |
Respuesta: | David Martínez González |
A mi me funciona con este codigo, espero que te sirva.
Proyecto ->Referencias ----------------- Añadir estas 2 Microsoft ADO Ext. 2.6 for DDL and Security Microsoft ActiveX Data Objects 2.5 Library --------------------------------------------------------------------------- 'General Declaraciones Dim Cn As New ADODB.Connection Dim Rs As New ADODB.Recordset Private Sub Form_Load() 'Si añadimos un dataenvironment y lo enlazamos 'la propiedad Connectionsource la copiamos y la pegamos aqui. Cn.ConnectionString = "Provider=MSDASQL.1;Password=1111;Persist Security Info=True;User ID=david;Data Source=jjodbc" 'Esto por si no podemos conectar con el servidor On Error Resume Next Cn.Open If Err Then MsgBox "Imposible conectar con el Servidor", vbCritical, "Error de conexion" 'Lo enlazamos a la conexion Cn para asi poder manipular 'sus datos Rs.ActiveConnection = Cn ' Esta linea nos la podemos ahorrar 'escribiendo cn como esta en la linea de abajo 'Rs.Open "select * from emp",cn , adOpenDynamic, adLockOptimistic 'Abrimos el Recordset y ponemos la consulta Rs.Open "select * from datos_almacen", , adOpenKeyset, adLockOptimistic Set DataGrid1.DataSource = Rs End Sub |
Pregunta: | 18446 - SISTEMA DE TRANSFERENCIA EDI |
Autor: | gabriel sellanes |
Hola necesitaria alguna pista ya que debo convertir un archivo enviado por EDI y en formato ANSI X12 O UN / EDIFAC
En realidad no tengo ni idea de como hacerlo por eso me dirijo a ustedes para ver si alguien me tira algún salvavidas. En realidad yo recibo un archivo en formato ansi x12 o un /edifac y necesito convertirlo en formato ascii y luego procesarlo.- Pero también tengo que respoder a partir de un ascii convertirlo en ansi x12 o edifac según lo que sea.- Esperando alguna respuesta que me ayude a resolver este pequeño gran inconveniente.- Saludos y Gracias Gabriel Sellanes |
Respuesta: | Marco Villatoro |
Bueno en realidad no es tanto de convertir de un formato a otro, ya que no es tan sencillo, y tampoco es muy complejo, Antes que nada tendrias que saber que realmente es un formato y que es un ESTANDAR, yo se que los formatos ASCII, es donde estan todos los caracteres soportados por algunas regiones, y a diferencia de este ANSI X12 o UN/EDIFACT son un estandar para normalizar la forma en que deben enviarse siertos documentos, por lo que la informacion dentro de un archivo ANSI X12 o UN/EDIFACT ya esta en ASCII, pero no en un archivo con la estructura que deseas, o con las tabulaciones que quieres, te recomiendo que entres a la pagina de EAN de mi pais y trates de optener mas informacion es posible que en tu pais tambien exista una pagina similar pues esta es de UN. la pagina www.eanguatemala.org.gt
estos estandares son como algoritmos de encriptacion, y lo que tienes que aprender es como se estructura cada documento en los distintos estandares de Intercambio electronica de Documentos ( por su siglas en ingles Electronic Document Intercheing EDI) |
Pregunta: | 18456 - ADODB.CONNECTION NO CAUSA ERROR AL VIOLAR CHECK CONSTRAINT |
Autor: | Melian Mejias |
Usando la tecnología de acceso a datos ADO 2.5, SO Windows NT Workstation 4.0, Visual Basic 6.0 Service Park 5.0 y SyBase como base de datos.
En la base datos tengo definido un Check constraint al nivel de tabla (comparacion de dos columnas fechas en la tabla) Cuando ejecuto una sentencia SQL Insert o Update a la tabla usando el Método Execute del objeto Connection en VB, este No genera Error al incumplir la restricción definida en el Check, más bien ejecuta con éxito la operacion insert o update. Pero sí ejecuto el script insert o update en el SQL Advantage, aquí sí, se genera el error 548, el cual tiene como descripción lo siguiente: Check constraint violation occurred, dbname = 'prueba', table name = 'siporden', constraint name = 'ckc_siporden'. Me gustaría saber que se puede hacer para que en la aplicación VB el objeto connection genere ese error. Espero algun consejo. Gracias. |
Respuesta: | Melian Mejias |
Lo que tuve que hacer fue cambiar el constraint.
Este fue mi primer constraints definido: 1- CHECK ((orfechainforme = null) or (orfecharecepcion <= orfechainforme)) Realizando más pruebas comprobé que cualquier comparación con null, el objeto connection no genera error en VB. Entonces así que modifique el constraint al siguiente y con esto obtuve lo deseado (generar error a nivel de aplicación): 2- CHECK (orfecharecepcion <= orfechainforme) No sé porqué a nivel de aplicación VB no se genera error y a nivel de SQL Advantage sí usando el primer constraint que definí? Tal vez me puedan brindar alguna sugerencia al respecto. Muchas gracias. Agradezco su tiempo. |
Pregunta: | 18464 - TEXTO VERTICAL EN CRYSTAL REPORTS |
Autor: | Carlos Sanchez |
Quisiera saber, si es posible hacer etiquetas de texto verticales en crystal reports y como.
de antemano gracias. |
Respuesta: | Sebastian Henriquez |
Existe un comando que te permite esto:
CrystalReport1.PaperOrientation = crVertical espero que te sirva. Cualquier duda me escribes, OK. |
Pregunta: | 18471 - DETECTAR SI LA IMPRESORA ESTA EN LINEA |
Autor: | Gabriel Martinez Bogado |
Hola como estan , mi pregunta es la siguiente:
Como puedo hacer para mandar una impresion ya sea en crystal reports o por un printer , y que me detecte si la impresora esta en linea , o sea si esta prendido la impresora Por favor si alguien puede ayudarme pasandome el codigo o guiandome de alguna forma Desde ya muy agradecido |
Respuesta: | Luis Gonzalez Ruiz |
Hola Gabriel.
Encontré una solución a tu problema. Crea un proyecto nuevo A nivel de modulo copía lo siguiente. Public Const GENERIC_WRITE = &H40000000 Public Const GENERIC_READ = &H80000000 Public Const FILE_ATTRIBUTE_NORMAL = &H80 Public Const CREATE_ALWAYS = 2 Public Const OPEN_ALWAYS = 4 Public Const INVALID_HANDLE_VALUE = -1 Public Type COMSTAT Filler1 As Long Filler2 As Long Filler3 As Long Filler4 As Long Filler5 As Long Filler6 As Long Filler7 As Long Filler8 As Long Filler9 As Long Filler10 As Long End Type Declare Function CreateFile Lib "kernel32" _ Alias "CreateFileA" (ByVal lpFileName As String, _ ByVal dwDesiredAccess As Long, ByVal dwShareMode As Long, _ ByVal lpSecurityAttributes As Long, _ ByVal dwCreationDisposition As Long, _ ByVal dwFlagsAndAttributes As Long, ByVal hTemplateFile As Long) _ As Long Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long Declare Function ClearCommError Lib "kernel32" (ByVal hFile As Long, lpErrors As Long, _ lpStat As COMSTAT) As Long Public Const CE_BREAK = &H10 ' break condition Public Const CE_PTO = &H200 ' printer timeout Public Const CE_IOE = &H400 ' printer I/O error Public Const CE_DNS = &H800 ' device not selected Public Const CE_OOP = &H1000 ' out of paper Y en un boton de comando el siguiente codigo y "Solución" Private Sub btfunciona_Click() Dim mHandle As Long Dim lpErrors As Long Dim x As COMSTAT mHandle = CreateFile("lpt1", GENERIC_WRITE Or GENERIC_READ, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0) If mHandle < 0 Then MsgBox "error de apertura del puerto " & mHandle Else If lpErrors And CE_BREAK Then MsgBox "Error genérico" End If If lpErrors And CE_PTO Then MsgBox "Timeout de impresora" End If If lpErrors And CE_IOE Then MsgBox "Error de entrada/salida" End If If lpErrors And CE_DNS Then MsgBox "Dispositivo no seleccionado" 'impresora apagada o algo por el estilo End If If lpErrors And CE_OOP Then MsgBox "Sin papel" End If CloseHandle mHandle End If End Sub Espero que te sirva y si es así por favor Comunicamelo. |
Respuesta: | Luis Gonzalez |
Hola Gabriel.
Soy el mismo que envió en anterior pero se fue con un pequeño desperfecto. Lo correcto es la Sgte. A nivel de modulo. Public Const GENERIC_WRITE = &H40000000 Public Const GENERIC_READ = &H80000000 Public Const FILE_ATTRIBUTE_NORMAL = &H80 Public Const CREATE_ALWAYS = 2 Public Const OPEN_ALWAYS = 4 Public Const INVALID_HANDLE_VALUE = -1 Public Type COMSTAT Filler1 As Long Filler2 As Long Filler3 As Long Filler4 As Long Filler5 As Long Filler6 As Long Filler7 As Long Filler8 As Long Filler9 As Long Filler10 As Long End Type Declare Function CreateFile Lib "kernel32" _ Alias "CreateFileA" (ByVal lpFileName As String, _ ByVal dwDesiredAccess As Long, ByVal dwShareMode As Long, _ ByVal lpSecurityAttributes As Long, _ ByVal dwCreationDisposition As Long, _ ByVal dwFlagsAndAttributes As Long, ByVal hTemplateFile As Long) _ As Long Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long Declare Function ClearCommError Lib "kernel32" (ByVal hFile As Long, lpErrors As Long, _ lpStat As COMSTAT) As Long Public Const CE_BREAK = &H10 ' break condition Public Const CE_PTO = &H200 ' printer timeout Public Const CE_IOE = &H400 ' printer I/O error Public Const CE_DNS = &H800 ' device not selected Public Const CE_OOP = &H1000 ' out of paper Luego en boton de comando Private Sub btfunciona_Click() Dim mHandle As Long Dim lpErrors As Long Dim x As COMSTAT mHandle = CreateFile("lpt1", GENERIC_WRITE Or GENERIC_READ, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0) If mHandle < 0 Then MsgBox "error de apertura del puerto " & mHandle Else If ClearCommError(mHandle, lpErrors, x) = False Then MsgBox "Error en ClearCommError" End If If lpErrors And CE_BREAK Then MsgBox "Error genérico" End If If lpErrors And CE_PTO Then MsgBox "Timeout de impresora" End If If lpErrors And CE_IOE Then MsgBox "Error de entrada/salida" End If If lpErrors And CE_DNS Then MsgBox "Dispositivo no seleccionado" 'impresora apagada o algo por el estilo End If If lpErrors And CE_OOP Then MsgBox "Sin papel" End If CloseHandle mHandle End If End Sub Ya está Chau |
Pregunta: | 18475 - CONECTIVIDAD DE VISUAL BASIC CON ORACLE |
Autor: | Linbe Os |
Quiero escuchar opiniones, comentarios y/o sugerencias del comportamiento de Visual Basic con Oracle, quiero utilizar este motor de base de datos, pero me da miedo que al momento de conectarla con Visual vaya a tener problemas. Que tan fácil es esta operación??? De antemano gracias. |
Respuesta: | Jose Fernando Barrios |
Puedes estar tranquilo puesto que trabajar con visual basic y oracle es muy sencillo yo ya lo he hecho, Debes crear un usuario en oracle y configurar el ODBC si quieres escribeme y seguimos charlando |
Pregunta: | 18481 - CREAR MAS CONTROLES EN FORMULARIO |
Autor: | Jose Miguel Muñoz Perez |
me aparece el siguiente mesaje cuando trato de agregar un nuevo control en un formulario
"Se alcanzó el límite, no se pueden crear mas controles para este formulario". quisiera saber donde se debe modificar el numero maximo de controles para un formulario, (si es que existe). atte. |
Respuesta: | SuNcO |
Intenta agregar objectos pero con Load, solo le tienes ke mover al index, es muy facil
Ejemplo : load text1(index) text1(index).visible = true text1(index).text = "lokekieras" Tambien puedes poner la propiedad left y top |
Pregunta: | 18497 - SSTAB CON ORIENTACIóN A LA IZQUIERDA |
Autor: | Monica Cresencio Martinez |
Hola.
Mi problema es que estoy usando el control SSTAB con orientación a la izquierda. Al escribir los títulos de las pestañas, éstos no se quedan centrados y no se pueden leer. He usado cajas de texto, pero al hacer click en la pestaña se marca la caja de texto en lugar de la pestaña. Si deshablito los textos, quedan en gris muy claro.¿Hay alguna forma de que queden los textos bien? Si conoceis algún control que tenga este efecto, es decir, pestañas a la izquierda a modo de menu, por favor, ¿me podríais indicar cuál és? Gracias. |
Respuesta: | Alberto Pozo Diez |
Hola, yo tenía ese mismo problema y se me arregló cambiando la fuente, tenía una fuente rara y me salía el texto horizontal, cambiando la fuente a 'arial' me sale en vertical y se puede leer bien, espero haber resuelto tu duda |
|< << 161 162 163 164 165 166 167 168 169 170 171 >> >| |