Hola a todos..
Tengo una duda sobre la busqueda por indices y es que al declararme la tabla y especificarle el indice intento realizar un seek sobre el indice y me da error...
La tabla la declaro de la siguiente forma:
USE ( CurDir() + "\articulos" ) VIA "DBFCDX" new
articulos->( OrdSetFocus( "cod_art" ) )
cAliasArticulos := Alias()
Luego intento hacer un seek("codigodelarticulo") y me da error. Puede ser simplemente que la declaracion del seek no sea asi. La verdad es que no he encontrado nada que me diga como es. Por eso recurro de nuevo aqui....
¿Alguien sabe algo?
Saludos y gracias.
Elías Torres.
duda sobre la localizacion de registros mediante indices...
-
- Posts: 233
- Joined: Wed Aug 09, 2006 3:07 pm
Hola,
(cAliasArticulos)->( DbSeek( tucodigodelarticulo ) )
Adios
(cAliasArticulos)->( DbSeek( tucodigodelarticulo ) )
Adios
Salutacions, saludos, regards
"...programar es fácil, hacer programas es difícil..."
https://modharbour.app
https://modharbour.app/compass
https://forum.modharbour.app
"...programar es fácil, hacer programas es difícil..."
https://modharbour.app
https://modharbour.app/compass
https://forum.modharbour.app
-
- Posts: 233
- Joined: Wed Aug 09, 2006 3:07 pm
Hola Carles,
Gracias por la información pero no me funciona. Se supone que el dbseek() lo que hace es posicionar el puntero en el registro de la tabla que se indique en base a la relación que se ponga y a partir de ahi se podría mostrar cualquier campo del registro, correcto?, pues no me va.....
No me da error pero no me muestra nada...
Seguiré averiguando el por que.....
Saludos y gracias.
Elías Torres.
Gracias por la información pero no me funciona. Se supone que el dbseek() lo que hace es posicionar el puntero en el registro de la tabla que se indique en base a la relación que se ponga y a partir de ahi se podría mostrar cualquier campo del registro, correcto?, pues no me va.....
No me da error pero no me muestra nada...
Seguiré averiguando el por que.....
Saludos y gracias.
Elías Torres.
Elias,
- Tienes correctos los indices ?
- Hay registros q cumplen la condicion ?
Prueba de abrir la tabla y crear el indice de nuevo.
Siau.
- Tienes correctos los indices ?
- Hay registros q cumplen la condicion ?
Prueba de abrir la tabla y crear el indice de nuevo.
Code: Select all
USE ...
INDEX ON .. TO ...
...
(cAlias)->( DbSeek( codigodearticulo, .t. ) )
WHILE (cAlias)->codigo == codigodearticulo .AND. (cAlias)->( !Eof() )
MsgInfo( (cAlias)->(FieldGet(1) ) )
(cAlias)->( DbSkip() )
END
Salutacions, saludos, regards
"...programar es fácil, hacer programas es difícil..."
https://modharbour.app
https://modharbour.app/compass
https://forum.modharbour.app
"...programar es fácil, hacer programas es difícil..."
https://modharbour.app
https://modharbour.app/compass
https://forum.modharbour.app
-
- Posts: 233
- Joined: Wed Aug 09, 2006 3:07 pm
Hola Carles,
Al final he solucionado el tema de los indices, gracias. Lo que me pasa es que me surgió otro problema... Cuando me posiciono con el indice en la tabla me muestra de ahi para abajo. Te pongo un ejemplo, supongamos que de la tabla solo quiero mostrar los dos primeros registros que son los que cumple las condicion de los indices, pero me muestra esos dos mas el resto....
Estoy utilizando un LISTBOX para mostrar la informacion, pero no se como decirle que si cambia el codigo del cliente no me siga mostrando ningun registro.
En definitiva, lo que pretendo es hacer lo mismo que hace set filter pero con indices, no se si me he explicado.....
(cAliasArticulos)->( DbSeek( (cAliasCliente)->codcli, .t. ) )
DEFINE dialog odlg resource "Cliente_articulos"
redefine LISTBOX oBrw ;
FIELDS articulos->cod_art,articulos->nom_art,STR(articulos->cant),STR(articulos->precio) ;
HEADERS "Código", "Descripción", "Cant", "Precio" ID 100 OF oDlg
ACTIVATE dialog odlg
Saludos y gracias....
Elías Torres.
Al final he solucionado el tema de los indices, gracias. Lo que me pasa es que me surgió otro problema... Cuando me posiciono con el indice en la tabla me muestra de ahi para abajo. Te pongo un ejemplo, supongamos que de la tabla solo quiero mostrar los dos primeros registros que son los que cumple las condicion de los indices, pero me muestra esos dos mas el resto....
Estoy utilizando un LISTBOX para mostrar la informacion, pero no se como decirle que si cambia el codigo del cliente no me siga mostrando ningun registro.
En definitiva, lo que pretendo es hacer lo mismo que hace set filter pero con indices, no se si me he explicado.....
(cAliasArticulos)->( DbSeek( (cAliasCliente)->codcli, .t. ) )
DEFINE dialog odlg resource "Cliente_articulos"
redefine LISTBOX oBrw ;
FIELDS articulos->cod_art,articulos->nom_art,STR(articulos->cant),STR(articulos->precio) ;
HEADERS "Código", "Descripción", "Cant", "Precio" ID 100 OF oDlg
ACTIVATE dialog odlg
Saludos y gracias....
Elías Torres.
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact: