Is that ^-1 documented somewhere?
Mike Sinclair

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] On Behalf Of Brad
Davidson
Sent: Wednesday, January 08, 2003 10:31 AM
To: RBASE-L Mailing List
Subject: [RBASE-L] - Re: Just some I wanted to share!

Oma - Where did you learn of the (^-1) invert syntax? Appreciate you
sharing
this!

Thanks,
Brad

Oma Cox wrote:

> Today I was working on a select statement with an embedded format and
> IFEQ function.
>
> Original Select:
> select custname=30 as CustName,sum(monsales)=13=S as
> Sales,sum(moncost)=12=S as Cost,(sum(monsales)-sum(moncost))=10 as
>
Profit,(format((ifeq(sum(monsales),0,0,((sum(monsales)-sum(moncost))/sum
> (monsales))*100)),'99.0'))=8 as ProfitP from tsalestotals group by
> custname where (bdate between .vbdate and .vedate and warehno =
> .vwarehno) order by sales=d
>
> Revised Select:
> select custname=30 as CustName,sum(monsales)=13=S as
> Sales,sum(moncost)=12=S as Cost,(sum(monsales)-sum(moncost))=10 as
>
Profit,(format((ifeq(sum(monsales),0,0,((sum(monsales)/sum(moncost))^-1)
> *100)),'99.0'))=8 as ProfitP from tsalestotals group by custname where
> (bdate between .vbdate and .vedate and warehno = .vwarehno) order by
> sales=d
>
> The original select will work fine until sum(monsales) = 0 then I get
a
> divide by zero error!
>
> The revised select will work all the time because eliminating the
> possibility of dividing being done by zero.
>
> This one was fun because it occurred only on 1 of 20 reports where
used.
>
> So the ifeq function either select zero for sum(monsales) equals zero
> and if not then the invert (^-1) of sum(monsales)/sum(moncost) times
100
> will give you the percentage of profit!
>
> Just wanted to share this there is no problem here but just an example
> of what will work 99% of the time and one that will work 100%.
>
> Best regards,
>
> Oma
> 17:57 CST

Reply via email to