• Viernes 3 de Mayo de 2024, 05:32

Mostrar Mensajes

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.


Temas - marisol_ylonen

Páginas: [1]
1
Visual Basic 6.0 e inferiores / Conexión Ado A Base De Datos En Servidor
« en: Sábado 14 de Julio de 2007, 01:31 »
Hola!
Cómo están?
Pues yo otra vez dando lata. Resulta que cometí un error que me ha costado una gran pérdida de tiempo. En mi proyecto, debo conectarme a un servidor as400, tiene varias bibliotecas pero a mí me interesa la que se llama RHDBD_16 -es el mismo nombre para la base de datos-, de ahí uso las tablas LGBS, TEILS y STRUS, la dirección del servidor es xx.xx.xx.xxx. Mi erro fue conectarme por ODBC, era muy lento pero yo podía soportarlo: mis jefes, no. Así que cree una tabla con una consulta de creación de tabla en access y metí mucho código en el editor de vb. Ya tengo todos los cálculos hechos de este modo, pero ahora debo conectarme al servidor y jalar sólo la base de datos RHDB_16. He leído que por ADO es mucho más rápido. Busqué unas cosillas y ya establecí la conexión al servidor, pero al meterle una consulta no hace nada. No sé si alguien pueda darme un ejemplo o algo y explicarme porque como que no doy una con ADO.
Este es el código de la conexión:

Public cn400 As New ADODB.Connection
Public cm_APILIB_PARTS As New ADODB.Command
Public cm_APILIB_SPROC2 As New ADODB.Command
Public rs_APILIB_PARTSDATA As ADODB.Recordset
Public rs_APILIB_SPROC2 As ADODB.Recordset
Option Compare Database
______________________________________
Private Sub Comando0_Click()
Dim strPARTNO As String
cn400.Open "Provider=IBMDA400;Data Source=192.168.11.10;", "", ""
Set cm_APILIB_PARTS.ActiveConnection = cn400
strPARTNO = Texto3
cm_APILIB_PARTS.CommandText = "select STBGNR, STKOMP FROM RHDBD_16.STRUS WHERE STKOMP LIKE '*" & strPARTNO & "*'"
cm_APILIB_PARTS.CommandType = adCmdText
Set rs_APILIB_PARTSDATA = cm_APILIB_PARTS.Execute
Lista1.AddItem (rs_APILIB_PARTSDATA.Fields(1).Value)

End Sub
_____________________________________
Private Sub Class_Terminate()
Set rs_APILIB_PARTS = Nothing
Set rs_APILIB_SPROC2 = Nothing
Set cm_APILIB_SPROC2 = Nothing
Set cm_APILIB_PARTS = Nothing
If Not cn400 Is Nothing Then
    cn400.Close
End Sub

Ojalá me puedan ayudar, no debe ser precisamente sobre as400, pero si se puede se agradece aún más; y miren que ya les estoy muy agradecida. :hola:
Saludos desde Querétaro, México y que tengan un extraordinariamente buen fin de semana. :kicking:

2
Visual Basic 6.0 e inferiores / Suma
« en: Viernes 29 de Junio de 2007, 01:41 »
Hola!
Estoy intentando hacer una suma, pero se me ha complicado proque implica varios campos de la misma columna.
Es esto, resulta que tengo una clave autonumérica, los campos: conjunto, componente, no_almacen y cantidad, entre otros. Varios registros pueden tener el mismo contenido en "conjunto" y en "componentes" pero mi consulta distinct los muestra porque, aunque yo sé que es lo mismo, los otros campos pueden variar. Lo que quiero hacer es sumar la "cantidad" de los que tengan lo mismo en "conjunto" y en "componente". Intenté esto:
strSQL="select sum(PLANEACION.COMPONENTE) from PLANEACION GROUP BY conjunto"
Y quiero tener el resultado en un textbox, pero no me manda nada ni error siquiera.
Pensé en hacerlo por programación, hacer que recorra los registros y los que encuentre con la misma combinacion "conjunto-componente" sume la cantidad. Pero no sé cómo hacerlo.
Hice una consulta en Access, sale bien, pero no sé cómo juntarlo en la consulta que genera al formulario.
Cualquiera de los métodos que se pueda usar y un ejemplo para adaptar, envíenlo y traten de explicarlo porque aún soy bastante nueva en esto, mi correo es:
marisol_ylonen@yahoo.com.mx
Cualquier respuesta es bienvenida, gracias

3
MS Access / Contar Distintos En Access
« en: Martes 26 de Junio de 2007, 19:15 »
Hice una consulta SQL que funciona en mi base de datos, pero cuando trato de hacerla en Access me da un error con la sintaxis de count; esta es la de sql:

select conjunto, count(distinct componente) from basedatos/tcomponentes, talmacen where empresa='5' GROUP BY conjunto

He estado buscando en la sintaxis correcta para Access pero en casi todas son distintas y traté de hacerlo con "select count(distinct(basedatos_tcomponentes.conjunto)) pero me dice que la función distinct no está definida. Y en un foro leí que DISTINCT no es una función por lo tanto no se hace así, que se deben hacer dos consultas pero no tengo idea cómo.
Esta es la de Access que funciona, pero creo que no hace lo mismo que la de SQL-perdón, no he podido probarlo porque el sistema está lentísimo y podría ponerse peor si lo hago-:

SELECT basedatos_tcomponentes.conjunto, Count(basedatos_tcomponentes.componente) AS CuentaDecomponente
FROM basedatos_tcomponentes, RHDBD_16_TEILS
WHERE (((basedatos_tcomponentes.componente)=[basedatos_tpiezas].[pieza]))
GROUP BY RHDBD_16_STRUS.STBGNR;

Puede alguien explicarme la sintaxis correcta o cómo pasarían la consulta sql a access.
Gracias y que tengan un día más iluminado que el mío que parece ser que hoy me van a regañar porque no he avanzado mucho que digamos y, ni modo de enseñar como avance un montón de consultas que mis jefes ni van a entender....

4
Visual Basic 6.0 e inferiores / Busqueda En Base De Datos Externa
« en: Viernes 22 de Junio de 2007, 23:50 »
Estaba buscando en el foro y en otras páginas algo que me ayude a crear una búsqueda en el código de Access. Encontré otras búsquedas y las adapté, en una base creada en Access trabajan bien, pero esas eran pruebas nada más y la base de datos que me interesa no está en Access sino en un AS400. A través de la opción de vincular tablas de Access hice la conexión y a partir de eso cree una consulta cuyo resultado se muestra en un formulario.
Pero quiero hacer un par de búsquedas sin usar los botones predeterminados (no quiero mostrar el cuadro de diálogo buscar y reemplazar) y me da error en la parte donde le indico en que tabla debe buscar la palabra que se escribe en una caja de texto.
Saben cómo debo hacerlo?
      Set pRueba = DBEngine.OpenDatabase("C:\ruta_de_la_base_en_access")
   strSQL = "SELECT * FROM RHDBD_16_LGBS where LGBS.LSTENR like '*" & strNoparte & "*'"
No sé si mi error sea llamar la base de access donde se vincularon las tablas. Y además debo agregar un filtro más por número de empresa para que solo busque en donde el numero_empresa sea='20', ejemplo.
Muchas gracias por la ayuda, y disculpen si pregunto demasiado pero es que si no no acabo...no en el tiempo que debo.
Buen día

5
Bases de Datos / Uso Del Count
« en: Miércoles 20 de Junio de 2007, 17:05 »
:hola: Saludos a todos,

Estoy ejecutando una consulta en el sql del as400. Tengo un campo
"componentes" y otro "conjunto" en la misma tabla. Tienen en común un campo llamado "No_Empresa". "Componente" es una pieza que pertenece a un "conjunto", entonces también tienen en común "conjunto". Bueno, necesito mostrar esta información en un formulario, que además de que me muestre a que conjunto pertenece cada pieza, me diga cuántos componentes lleva cada conjunto.
El punto es que no sé si sea count lo que debo usar y si es cómo se usa?
La sintaxis para las consultas en el as400 es algo así:
select componente, conjunto from basedatos/tabla where No_Empresa='5' order by conjunto

Esto me devuelve los componentes y conjuntos ordenados por el conjunto. Ahora, cómo le hago para que cuente cuántos componentes por conjunto son?.

Muchas gracias por su atención.
 :hola:

6
Visual Basic 6.0 e inferiores / Visual Basic En Access
« en: Martes 19 de Junio de 2007, 20:14 »
hola a todos.
soy nueva en el foro. trabajé con vb hace ya algún tiempo y ahora lo necesito para un proyecto que debo entregar a más tardar en un mes.
resulta que estoy conectada a una bd en un as400, ya establecí las conexiones de la tablas vinculándolas, hice una consulta que me devuelve, entre otros datos, el número de almacén que puede ser "co", "re", "pr", etc.
Quiero que en una etiqueta me muestre el número de almacén y en el editor de visual basic poner un if que mende el texto "RECIBO" o "COMPONENTES" a otras dos cajas de texto. Es decir, si num.almacen="re" poner "recibo" en el texto12, si  num.almacen="co" poner "componentes" en el texto14, si no es ninguno escribir "vacio".
no sé si me entienden, creo que el asunto es sencillo, el problema es que no recuerdo como se hace, si tengo que llamar a la propiedad text = "recibo" o cómo.
gracias

Páginas: [1]