Clipper/FiveWin - PULSAR INICIAL

 
Vista:

PULSAR INICIAL

Publicado por Ingrid Lauria (48 intervenciones) el 31/07/2006 18:49:20
hola!!!
tengo una funcion valid que presenta la lista de proveedores, busco un proveedor pulso enter y captura el codigo y el nombre; lo que necesito es incorporarle que al pulsar una letra el cursor se ubique en el primer proveedor que el nombre empice con esa letra.
que tengo que ponerle a la funcion?
gracias de antemano, ingrid.

la funcion que tengo es esta:

static function CodiPro(Cli)
local oDlg,oLbx,nk,font11
sele Proveed
set order to 2 //para que aparezcan alfabeticamente, order 1 es por Codigo
go top

Define Font Font11 Name "Arial" Size 8,20 bold
DEFINE DIALOG oDlg TITLE "BUSQUEDA DE PROVEEDORES" font font11 FROM 0,0 TO 20,40
@ 0,0 LISTBOX oLbx FIELDS transf(Proveed->Codigo,"99999"),;
Proveed->NOMBRE;
HEADERS "No.","PROVEEDOR";
Fieldsizes 60,90;
SIZE 158,150;
OF oDlg

// si pulsa <intro>
oLbx:bKeyDown:={|nK| IIF ( nK=VK_RETURN,;
(Cli:=Proveed->CODIGO, oDlg:End() ), Cli:=0) }

ACTIVATE DIALOG oDlg CENTERED
font11:End()
set order to 1

sele CuentPro
retu Cli
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:PULSAR INICIAL

Publicado por Alvaro (9 intervenciones) el 05/08/2006 18:59:29
Ingrid,

En primer lugar te aconsejaría que al nombrar las variables, uses el código estandar (notación húngara), te ayudará bastante al depurar el programa y para que lo entiendan los demas.

1) La variable que tu le envias a la función CODIPRO, entiendo que es las primeras letras del nombre del proveedor (una o varias) y por tanto es una variable alfanumérica que llamaremos cNomPro y que tiene que ser distinta
ala variable que devuelve la función con el código del proveedor, que me imagino es numérica y que llamaremos nCodPro.

static function CodiPro(cNomPro)
local oDlg,oLbx,nk,font11
sele Proveed
set order to 2 //para que aparezcan alfabeticamente, order 1 es por Codigo

DBSEEK ( cNomPro, .t. )

2) Si no tienes muchos proveedores (mucho me refiero a miles) es preferible que busques por cualquier palabra, ya que a veces, los usuarios recuerdan solo una parte del nombre.- Por ejemplo Promociones Inmobiliarias Camacho, recuerdan Camacho, y por el sistema anterior no saldría. Si eliges esta forma, puedes usar un SET FILTER $ o si el programa es en red, un indice temporal que es mas rápido.

3) En un sistema que hice hace años, daba opción al usuario para buscar el proveedor por su código (a veces lo recordaban y se ahorraban de la pantalla de la funcion CODIPRO) o por parte del nombre.

Un saludo desde Málaga
Alvaro
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:PULSAR INICIAL

Publicado por Ingrid Lauria (48 intervenciones) el 05/08/2006 23:09:13
mmmm, dices que no entiendes mi codigo ????

pues yo no te entiendo, vaya no creo que ni tu entiendes lo que escribiste

ingrid
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar