problema con Scopes

problema con Scopes

Postby MOISES » Tue Mar 25, 2008 9:15 am

Hola:

Tengo un problema con Scopes.

En concreto, tengo una base de datos para las facturas, y lleva un control de series. Se indexa de esta forma:

INDEX ON Alltrim( FACTUR1->FSERIE ) + Alltrim( str(FACTUR1->FNUMERO) ) TO ("FACTUR1")


Quiero, por ejemplo, sacar solo las facturas desde la B5 a la C3. Hago esto:


OrdScope( 0, “B5” )
OrdScope( 1, “C3” )


Pero no funciona correctamente, se muestran todas las facturas desde la B1 (y no desde la B5, que es lo que quiero). ¿Qué hago mal?. Muchas gracias!!!.

Un saludo,

Moisés
MOISES
 
Posts: 838
Joined: Wed Aug 22, 2007 10:09 am

Postby Ricardo Ramirez » Tue Mar 25, 2008 9:27 am

Moises :

INDEX ON Alltrim( FACTUR1->FSERIE ) + Alltrim( str(FACTUR1->FNUMERO) ) TO ("FACTUR1")

No recuerdo la sintaxis del INDEX....pero por el "TO" que indicas, debes estar a generar un .IDX los SCOPES estan reservados para los .CDX


Saludos!
Ricardo Ramirez
 
Posts: 8
Joined: Wed Oct 12, 2005 8:24 am

Postby MOISES » Tue Mar 25, 2008 10:07 am

Pero si los scopes en teoría funcionan bajo índices NTX.
MOISES
 
Posts: 838
Joined: Wed Aug 22, 2007 10:09 am

Re: problema con Scopes

Postby Carlos Mora » Tue Mar 25, 2008 12:51 pm

Hola Moises,

MOISES wrote:Hola:

INDEX ON Alltrim( FACTUR1->FSERIE ) + Alltrim( str(FACTUR1->FNUMERO) ) TO ("FACTUR1")


Quiero, por ejemplo, sacar solo las facturas desde la B5 a la C3. Hago esto:


OrdScope( 0, “B5” )
OrdScope( 1, “C3” )




Hay algo que estas haciendo mal, y que te tarde o temprano te va a pasar factura: usar alltrim() en una clave de indice. La clave del índice siempre tiene que tener la mismo longitud, y alltrim te va a variar siempre con 1, 23, o 509. De hecho aunque clipper 'se lo traga' en xHarbour te da un error de corrupcion.

te recomiendo que pruebes con
INDEX ON Alltrim( FACTUR1->FSERIE ) + StrZero(FACTUR1->FNUMERO,8) TO ("FACTUR1")

y el scope

OrdScope( 0, “B”+StrZero(5,8) )
OrdScope( 1, “C”+StrZero( 3, 8 ) )

a ver si asi te funciona.

Un saludo,

Carlos
Carlos Mora
 
Posts: 989
Joined: Thu Nov 24, 2005 3:01 pm
Location: Madrid, España

Postby karinha » Tue Mar 25, 2008 1:23 pm

Hola, en tu INDEXADOR, tiene que poner esta linea de comando para SCOPES.
Code: Select all  Expand view  RUN
#Include "Ord.Ch"       // Para Utilizar SCOPES
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7859
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Postby Miguel Salas » Tue Mar 25, 2008 1:52 pm

De acuerdo con Carlos, usar numericos en campos que vas a ocupar en indices no es recomendable, trata de cambiaro a character y grabarle ceros a la izquierda, te evitaras muchas broncas, tambien ese alltrim(fserie) no deberia ser si supuestamente tiene bien ese campo.

saludos
Miguel Salas
 
Posts: 132
Joined: Sun Oct 23, 2005 4:09 pm
Location: Pánuco,Ver. México

Postby MOISES » Tue Mar 25, 2008 3:01 pm

Muchas gracias, Carlos. Como siempre, das en el clavo.

Un saludo,
MOISES
 
Posts: 838
Joined: Wed Aug 22, 2007 10:09 am


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 53 guests