BUENAS A TODOS....
DE NUEVO MOLESTANDO Y A SU VES SOLICITANDO SU AYUDA...
ALGUIEN ME PODRIA AYUDAR PARA PODER CREAR INDICES EN LA POCKET... LOQ UE PASA QUE QUIERO CREAR INDICES CDX Y NO FUNCIONA COMO EN FIVEWIN NORMAL....
COMO HE CREADO INDICES ES DE ESTA FORMA...
#include "FiveWin.ch"
#define TAB Chr(9)
STATIC BASES
STATIC CONF
STATIC nIndices:=1,nTot:=0,nTreg:=0
STATIC oSay,oSay1
STATIC nArch:=0
//----------------------------------------------------------------------------//
function MAIN()
SET _3DLOOK ON
CLOSE ALL
indexa()
return nil
//---------------------------------------------------------------------------//
STATIC fUNCTION pide_acceso()
local caac := "caacay"
local oEntrada,oCve
local cClave
local paso:=.f., okacerto:=.f.
return .T.
//---------------------------------------------------------------------------//
static function indexa()
local oAvance,oMeter,oMeter1,oBtnok
local nPos,nActual
local lEnd:=.f.
DEFINE DIALOG oAvance RESOURCE "indices"
REDEFINE SAY oSay ID 132 OF oAvance UPDATE
REDEFINE SAY oSay1 ID 133 OF oAvance UPDATE
REDEFINE METER oMeter VAR nactual ID 130 OF oAvance ;
PROMPT " " ;
COLORS CLR_HGRAY, CLR_YELLOW ;
BARCOLOR CLR_HBLUE, CLR_YELLOW UPDATE
REDEFINE METER oMeter1 VAR nPos ID 131 OF oAvance ;
PROMPT " " ;
COLORS CLR_HGRAY, CLR_YELLOW ;
BARCOLOR CLR_HBLUE, CLR_YELLOW UPDATE
REDEFINE BUTTON oBtnok ID 113 OF oAvance UPDATE
oAvance:Bstart:= {||INdices(oMeter,oMeter1),oAvance:end()}
ACTIVATE DIALOG oAvance CENTERED
oAvance:end()
return nil
//----------------------------------------------------------------------------------//
static Function Indices(oMeter,oMeter1)
nIndices=7
ferase(bases+'\'+'*.cdx') //borra todos los cdx
genera_index(oMeter,oMeter1,"BASE0001","->ART" ,"bask1001")
genera_index(oMeter,oMeter1,"BASE0001","->NOMAR" ,"bask1002")
genera_index(oMeter,oMeter1,"BASE0001","->PROV" ,"bask5001")
genera_index(oMeter,oMeter1,"clientes","->clave" ,"kcliente")
genera_index(oMeter,oMeter1,"clientes","->nombre" ,"kclient1")
genera_index(oMeter,oMeter1,"clientes","->rfc" ,"kclient2")
genera_index(oMeter,oMeter1,"clientes","->no_cli" ,"kclient3")
/*Genera_index(oMeter,oMeter1,"caja02","->(alltrim(num_cajero))","ind_caja1")
Genera_index(oMeter,oMeter1,"clientes","->(alltrim(Clave))" ,"ind_clien1")
Genera_index(oMeter,oMeter1,"clientes","->Nombre","ind_clien2")
Genera_index(oMeter,oMeter1,"detaptos","->(alltrim(Cvecliente))","ind_deta1")
Genera_index(oMeter,oMeter1,"detaptos","->(alltrim(proveedor))" ,"ind_deta2")
Genera_index(oMeter,oMeter1,"detaptos","->(alltrim(cvecliente)+alltrim(proveedor))" ,"ind_deta3")*/
// Genera_index(oMeter,oMeter1,"TEMPORAL","->(alltrim(proveedor))" ,"ind_TEM01")
//Genera_index(oMeter,oMeter1,"provpar","->(alltrim(prov))" ,"ind_prov1")
Alert('Generaci¢n de indices Exitosa')
return nil
//----------------------------------------------------------------------------------//
static function Genera_index(oMeter, oMeter1,base,campo,indice)
local cExpr
local sw:=.t.
nAvance:=0
nArch++
do while sw
use &base
IF NETERR()
MSGBEEP();MSGBEEP();MSGBEEP()
ALERT('!CUIDADO! Algun Usuario esta ocupando el archivo '+base)
sw:=.t.
else
sw:=.f.
endif
enddo
cExpr := base+campo
oSay :SetText("Archivo: "+BASE+' /'+indice+'.cdx'+' Reg: '+alltrim(str(lastrec())))
oSay1:Settext(alltrim(str(nArch))+'/ '+alltrim(str(nIndices)))
oMeter :nTotal:= LASTREC()
oMeter1:nTotal:= LASTREC()*nIndices
index on &cexpr TAG &indice TO &BASE;
EVAL (oMeter:SET(nAvance+RECNO()),oMeter1:SET(++nTreg),SYSREFRESH(),.T.)
CLOSE &BASE
return nil
//----------------------------------------------------------------------------//
INIT PROCEDURE Primero
REQUEST DBFCDX
RDDSETDEFAULT("DBFCDX")
RETURN
//----------------------------------------------------------------------------//
PERO YA EN LA POCKET NO FUNCIONA...BUENO CON ALGUNA MODIFICACIONES CLARO...
ESPERO Y ME PUEDAN AYUDAR...........
!!!! Como crear indices ¡¡¡¡
- Antonio Linares
- Site Admin
- Posts: 42655
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Has thanked: 67 times
- Been thanked: 96 times
- Contact:
error

Y NO PUEDO HACER UNA FUNCION UNICAMENTE PARA INDEXAR..
EL ERROR ES EL SIGUIENTE...
EN LA BARRA DE TIDULO DICE..

EN EL ERRO..

oye no puedo meter varios indices en el mismo archivo....
es decir
index on base0001->art TO (CurDir() +"\bases\base0001")
index on base0001->nomar TO (CurDir() +"\bases\base0001")
index on base0001->fecha TO (CurDir() +"\bases\base0001")
o como hago este procedimiento
- Antonio Linares
- Site Admin
- Posts: 42655
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Has thanked: 67 times
- Been thanked: 96 times
- Contact:
Estás usando Inkey() en alguna parte ?
Recuerda que en FWPPC los Meter no están implementados. Tienes que usar los PROGRESS bar. Revisa samples\TestProg.prg
Para indexar por distintos campos, usa TAGs:
index on base0001->art TAG "art" TO (CurDir() +"\bases\base0001")
index on base0001->nomar TAG "nomar" TO (CurDir() +"\bases\base0001")
index on base0001->fecha TAG "fecha" TO (CurDir() +"\bases\base0001")
Recuerda que en FWPPC los Meter no están implementados. Tienes que usar los PROGRESS bar. Revisa samples\TestProg.prg
Para indexar por distintos campos, usa TAGs:
index on base0001->art TAG "art" TO (CurDir() +"\bases\base0001")
index on base0001->nomar TAG "nomar" TO (CurDir() +"\bases\base0001")
index on base0001->fecha TAG "fecha" TO (CurDir() +"\bases\base0001")