Forma Rapida de Contar Registros *SOLUCIONADO*

Post Reply
remtec
Posts: 719
Joined: Fri May 12, 2017 2:50 pm

Forma Rapida de Contar Registros *SOLUCIONADO*

Post by remtec »

Hola Amigos

Quizás una pregunta ingenua para muchos.

Quiero saber si este una forma mas rápida de contar los registro que cumplan una condición en una Dbf, que no sea un "Do while", siempre lo he realizado recorriendo la dbf completa y preguntando si cumple condición y lo sumo.

Muchos Saludos

Antonio

Ejemplo:

Code: Select all | Expand


         Sele b
        DbGotop()
        Reg:=0
        Do While !Eof()
             If Subs(b->Tip_Pag,1,2)="VI".or.Subs(b->Tip_Pag,1,2)="CH"
                   Reg:=Reg + 1
             Endif
             DbSkip()
        Enddo

 
Last edited by remtec on Thu May 27, 2021 4:54 pm, edited 1 time in total.
FWH 22.10 - HARBOUR - PELLES C
User avatar
karinha
Posts: 7948
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil
Been thanked: 3 times
Contact:

Re: Forma Rapida de Contar Registros ?

Post by karinha »

João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
artu01
Posts: 400
Joined: Fri May 11, 2007 8:20 pm
Location: Lima

Re: Forma Rapida de Contar Registros ?

Post by artu01 »

Hola no lo he probado pero quizas resulte con dbeval()

Code: Select all | Expand


      b->( dbEval( {|| iif( Subs(b->Tip_Pag,1,2)="VI".or.Subs(b->Tip_Pag,1,2)="CH", Reg:=Reg + 1, ) },, {||b->!Eof()}))
 
fwh 17.12, harbour 3.2.0, pelles C, bcc7, Ms-Sql
User avatar
JoseAlvarez
Posts: 811
Joined: Sun Nov 09, 2014 5:01 pm

Re: Forma Rapida de Contar Registros ?

Post by JoseAlvarez »

Prueba usando la funcion

Reccount() for <condicion>

Saludos
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
karinha
Posts: 7948
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil
Been thanked: 3 times
Contact:

Re: Forma Rapida de Contar Registros ?

Post by karinha »

JoseAlvarez wrote:Prueba usando la funcion

Reccount() for <condicion>

Saludos


Master José, siempre que possible, haga asi, porfa.

Code: Select all | Expand


// \SAMPLES\RECCOUNT.PRG

#include "FiveWin.ch"

FUNCTION Rec_Count()

   LOCAL nRecords

   USE CUSTOMER NEW

   USE TEST NEW

   ? RecCount()

   nRecords := CUSTOMER->( RecCount() )

   ? nRecords

   CLOSE ALL

RETURN NIL

// FIN
 


Saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
remtec
Posts: 719
Joined: Fri May 12, 2017 2:50 pm

Re: Forma Rapida de Contar Registros ?

Post by remtec »

Amigos

Muchas gracias por su ayuda.

Aplique:

Reccount() for <condicion>

Muy agradecido por su tiempo y ayuda.

Muchos Saludos.

Antonio
FWH 22.10 - HARBOUR - PELLES C
User avatar
JoseAlvarez
Posts: 811
Joined: Sun Nov 09, 2014 5:01 pm

Re: Forma Rapida de Contar Registros *SOLUCIONADO*

Post by JoseAlvarez »

Saludos Joao.

Tienes razón, trataré de ser más didáctico y explícito la próxima vez.

Se trata de ayudar lo más posible.

Gracias por la observación.
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
Post Reply