How do I use the date range in Progress 4gl

Asked

Viewed 585 times

0

I’m doing a program to list

  • list customer
  • Number of applications
  • Order quantity per customer

all for the month of February 2015

as I would do to catch only the interval of

>= 01/02/2015 && <=  28/02/2015 
  • what is the name of your date field?

  • I got my boss to help me

  • was thus FOR EACH Ped-sale WHERE MONTH(Ped-sale.dt-issue)= 2 AND YEAR(Ped-sale.dt-issue) = 2015 BREAK BY Ped-sale.name-Abrev BY Ped-sale.dt-issue to DESC:

  • Put your answer and finish the post so I can help more people.

1 answer

0

I saw what you did there in the commentary. But using functions that need the value of the table you are searching for automatically transforms for each into a full table scan, that is, it will not be able to apply indices to your query. In banks with a large number of orders, this practice throws its performance in the trash. I’d do it that way:

FOR EACH ped-venda WHERE ped-venda.dt-emissao >= 02/01/2015 
     AND ped-venda.dt-emissao <= 02/28/2015 
 BREAK BY ped-venda.nome-abrev BY ped-venda.dt-emissao DESC:

Being the fixed date, as Voce suggested. This makes Progress use the most appropriate Intel, greatly accelerating the search for the result set of your query.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.