• Jueves 2 de Mayo de 2024, 22:57

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.


Mensajes - marisol_ylonen

Páginas: [1]
1
Visual Basic 6.0 e inferiores / Re: Conexión Ado A Base De Datos En Servidor
« en: Jueves 19 de Julio de 2007, 00:42 »
Hola!
Pues, se supone que sí. La idea es que se presenten varios campos de los registros que cumplan unas ciertas condiciones, no sólo uno. Esta es una prueba pero no me sale. Lo que pretendía era: se escribe un número de parte en la caja de texto y busca en las tablas el registro de ese número. Me he encontrado ejemplos de conexión y ya los calé todos pero no logro llamar los datos porque no tengo grid en Acces y a listbox no los envia. Creo que está mal la sintaxis, pero es que al escribir Lista1. no me da ninguna opción. Si alguien sabe de algún método para jalar los datos del servidor a formularios de Access, que no sea ODBC, se lo agradecería mucho.
Muchas gracias de nuevo.

2
Visual Basic 6.0 e inferiores / Re: Conexión Ado A Base De Datos En Servidor
« en: Sábado 14 de Julio de 2007, 01:38 »
ah!!! Y por si alguien está en las mismas, hay un libro completísimo acerca de ado y oledb en el as400; es de IBM -de los redBooks- y se llama "a fast path to as400..." por si quieren buscarlo en google.
redbooks.ibm.com/redbooks/pdfs/sg245183.pdf :comp:
Y por qué no lo,leo? Ya lo empecé, me quedé en la página 67 pero es de 400 y tantas hojas y no tengo tanto tiempo, debo acabar cuanto antes. Pero si hay alguien que aún tenga el tiempo suficiente y sepa inglés -porque está en inglés- seguro que le servirá.
Gracias por todo :hola:

3
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:

4
Visual Basic 6.0 e inferiores / Re: Suma
« en: Lunes 2 de Julio de 2007, 03:31 »
muchas gracias, en cuanto llegue mañana a mi trabajo, voy a intentarlo porque todo lo tengo allá y les cuento qué pasó. :comp:
Y si sigo sin entender, creo que voy a seguir dándoles lata. Qué tengan un buen día!
Son verdaderamente unos amores, gracias! :hola:

5
Visual Basic 6.0 e inferiores / Re: Suma
« en: Sábado 30 de Junio de 2007, 00:42 »
Hola! :hola:
Cómo decirte que estoy muy agradecida contigo. Ya me estba resignando y le estaba buscando por otro lado. Funciona de maravilla. Sólo una pregunta más, no sé si sea por mi query, hace la suma total de las cantidades de todos los registros?
Este es el sql que le metí:
strSQL = "SELECT Sum(PLANEACION.LSLGBE) AS SumaDeLSLGBE FROM PLANEACION GROUP BY PLANEACION.STBGNR"
Yo pensé que cambiaría la cantidad según el conjunto, porque eso es lo que hace el query si lo ejecuto como consulta, pero con el código parece mandarme la suma total, no solo de los que repitan la combinación STBGNR y STKOMP.
Bueno, contestasté mi primer pregunta.
Muchas gracias porque creo que a muchos nos servirá.
Hasta luego y que sigas tan iluminado y dispuesto a contestar a los que no nos rifamos tanto. :kicking:

6
Visual Basic 6.0 e inferiores / Re: Suma
« en: Viernes 29 de Junio de 2007, 15:17 »
hola!
Pues tiene esto: srtSQL=""
Y si asigno el alias, o sea el nombre que toma la suma, al texto31, texto31 tiene valor nulo.
Todo lo que necesito es hacer que el resultado del strSQL se vea en el textbox al momento de ejecutar.
Gracias de nuevo, son unos amores :hola:

7
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

8
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....

9
Bases de Datos / Re: Uso Del Count
« en: Martes 26 de Junio de 2007, 01:07 »
Gracias por la ayuda, estoy muy feliz porque ya lo resolví :smartass: .
Es así:

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

Y creo que tiene lógica, contar los distintos componentes por conjunto.
Ahora el problema es cuando la meto en una consulta donde ya se incluya todo lo que necesito, pero ahora creo que podría resolverlo -no descarto ayuda, porque me podría pasar lo mismo con esta que me costó tanto trabajo-
Lo siento, no puedo poner la información que me pides, pero adjunto un archivo con la información que quiero obtener a partir de las consultas, lo que me falta se genera a partir de esto pero no lo puedo hacer hasta que tenga lo de los componentes.

select stfirm, stkomp, tebez1, stbgnr, lslanr, temagr, lslgbe, count
(distinct stkomp) from rhdbd_16/ strus, teils, lgbs where strus.stko
mp=teils.tetenr and teils.temagr="ASOX" and lgbs.lslanr="CO"        
GROUP BY stbgnr                                                    

La información que va en el archivo, la obtuve antes de tratar de incluir el count

Una vez más: muchas gracias :D

10
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

11
Visual Basic 6.0 e inferiores / [Código Fuente] muchísimas gracias
« en: Jueves 21 de Junio de 2007, 17:32 »
Acabo de entrar al foro y todavía estoy medio torpe en esto, seguro que mi problema te parecerá pan comido, puedes ayudarme?
Por favor, escríbeme a este correo. Te aseguro que no batallarás tanto, pero a mí me está desesperando porque estoy segura de que el asunto es por demás simple.
Gracias, este es mi correo:
za_ylonen@yahoo.com.mx

12
Bases de Datos / Re: Uso Del Count
« en: Jueves 21 de Junio de 2007, 00:58 »
Sigo peleándome con la misma consulta, intentando que me cuente los registros con el mismo número de conjunto. Intente esto pero me cambia el valor de la columna conjunto por 1
select conjunto, componente, count(*) from basedatos/tabla GROUP BY conjunto,
componente
Buscando en Internet me hallé un documento en una página de trucos de as400 que pone un case dentro del count, algo así
select biblioteca,  ---me imagino que es la base de datos-----
count(case when dbxAtr='PF' then dbxAtr end) as CountPF                                                        
Creen que pueda agregar un case que haga la comparación entre dos registros. Es decir, tengo registros con la columna "conjunto" en común, entonces hacer que compare esa columna y contar los que sean iguales en esa columna. Supongo que eso me daría la cantidad de piezas por componente.
Ayuda, por favor

13
Visual Basic 6.0 e inferiores / Re: Manua Interactivo
« en: Miércoles 20 de Junio de 2007, 21:01 »
Pues si te interesa, hay una página de mi escuela, vienen algunos ejemplos de código en ejercicios completos. Ojalá te sirvan, te paso la dirección:

Creo que no puedo agregar direcciones, pero entra a la págna de la carrera de Tecnologías de la Información de la UTEQ en Querétaro -México-, busca en Bases de datos y al final viene un Link que dice Manual de Visual Basic.

Creo que será más fácil que la encuentres si entras la buscas como Lizard

Qué tengas un buen día :whistling:

14
Visual Basic 6.0 e inferiores / Re: Visual Basic En Access
« en: Miércoles 20 de Junio de 2007, 20:30 »
Ya entendí cómo debe ir el código, ya está bien, según yo. El problema es otro ahora, en qué evento tengo que poner el código. El valor de la caja de texto está cambiando según me desplazo en los registros de formulario, ásí que lo metí en un Change, y como al abrir tiene el valor "re" si escribe "Recibo" pero cuando cambia a "CO" sigue diciendo "Recibo". Este es el código, puede alguien decirme dónde hay que ponerlo para que esté cabiando conforme me muevo en los registros? :rolleyes:

cadena = ""
cadena2 = ""
cadena = "Componentes"
cadena2 = "Recibo"
If LSLANR = "CO" Then
    Texto12 = cadena
    Else
        Texto14 = cadena2
End If

15
Bases de Datos / Re: Uso Del Count
« en: Miércoles 20 de Junio de 2007, 18:36 »
SELECT componente, conjunto FROM basedatos/tabla WHERE empresa='5' order by conjunto                                                              
Ejecución completa de sentencia SELECT                              
Esta funciona bien, me da esto:
componente          conjunto        
MS0000L002       C922-XXX-01  
91121401           C922-XXX-01  
ES0000L001        C922-XXX-02  
MP000106           D258003125-02
1250520107.4     D258003125-02
1251010108.2     D258003125-02
1251251103        D258003125-02
1251355107.2     D258003125-02
1254488129        D258003125-02
ES43001004        D258003125-02
ES44001904        D258003125-02
ES43001804        D258003125-02
ES0000A0125      D258003125-02
1250520107.4     D258003559-01

No sé si se entienda bien lo que busco, por ejemplo, si llego a un registro en el formulario con el conjunto D258003125-02, me diga también cuántas piezas lleva ese conjunto y que en otra caja de texto me diga a qué conjunto pertenece:
No_parte(componente)       ES0000A0125
Conjunto                           D258003125-02
No_piezas del conjunto       10

A lo mejor haciendo una comparación por conjunto y si son iguales se sumen, pero no sé cómo hacerlo. Y es que aparte en el sistema están guardadas unas piezas que no se  fabrican, como componente empiezan con ES*, y en su descripción es Subensamble *. Cuando se muestre la información estos datos no deben aparecer tampoco en el numero de componentes por conjunto.

¡¡¡¡¡¡Ayúdenme por favor, me estoy desesperando!!!!!!!

16
Bases de Datos / Re: Uso Del Count
« en: Miércoles 20 de Junio de 2007, 17:35 »
La intenté como propones pero no me funciono, me decía que estaba haciendo un uso indebido del count. La modifiqué y la escribí así:
select count(componente) conjunto from basedatos/tabla where No_empresa='5'
GROUP BY stkomp order by stbgnr                                
Ejecución completa de sentencia SELECT                
Devuelve datos, pero no es lo que quiero. Cambia la columna conjunto por números que parecen autonuméricos pero no son porque se repiten varias veces. Esto es la parte final del resultado:
95
 98
 99
101
152
156
164
188
192
212

17
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:

18
Bases de Datos / Re: Access Client Y Vb.
« en: Miércoles 20 de Junio de 2007, 15:50 »
Yo también estoy trabajando con un AS400 y estoy vinculando las tablas desde Access. Resolví lo de la conexión creando un origen de datos ODBC desde el panel de control. Para que puedas crearlo necesitas tener el Client Access con permisos para modificar los orígenes de datos. En el panel de control busca Origenes de datos y crea uno por odbc hacia el as400. No sé si esto es lo que ya intentaste, pero a mi me funciona y cada vez que me conecto me pide mi nombre de usuario y contraseña.

19
Visual Basic 6.0 e inferiores / Re: Visual Basic En Access
« en: Martes 19 de Junio de 2007, 23:09 »
este es el código que estoy manejando:
Private Sub LSLANR_Change()
If LSLANR.Text = "CO" Then Texto12.Text = "Componentes"
Else: Texto14.Text = "Recibo"
End If
End Sub

Hace mucho que no trabajo en Visual Basic pero me parece que la sintaxis del generador de código de access es distinta a pesar de que es vb. A lo mejor es el if lo que falla, cómo puedo arreglarlo?
Además de esto, debo meter cálculos y la verdad es que no pensé que fuera a tardar tanto con esto. Estos cálculos vienen hasta que haya obtenido toda mi información y tener esto me servirá de base. garcias otra vez

20
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]