Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Functions in a select
Message
 
 
To
25/08/2008 15:17:40
General information
Forum:
Visual FoxPro
Category:
Databases,Tables, Views, Indexing and SQL syntax
Miscellaneous
Thread ID:
01341594
Message ID:
01341596
Views:
20
You need to cast your result to the correct number of digits.
select *, CAST(GetExpendituresBySubelement(elementnum)  as Numeric(10,2)) as expended ;
>from rta_elements ;
>order by elementnum
Not to mention it's not a good idea to use UDF in Selects in VFP.

>This function
>
>function GetExpendituresBySubElement
>lparameters lnSubElement
>local lnOldWorkArea, lnRetVal
>dimension lnRetval(1)
>lnOldWorkArea = select(0)
>
>select  sum(amount) ;
>from tip ;
>inner join ledger on ledger.tip_id = tip.tip_id and source="RTA" ;
>where val(substr(sponsor_id,5,2)) = lnSubelement;
>into Array lnRetVal
>
>select(lnOldWorkArea)
>return iif(isnull(lnRetVal),0,lnRetVal)
>
>seems to work OK when called with a single value like this
>
>? GetExpendituresBySubelement(2)
>
>But when embedded in another select like this
>
>select *, GetExpendituresBySubelement(elementnum) as expended ;
>from rta_elements ;
>order by elementnum
>
>I get only 0's and *'s. Can someone please explain?
>
>Thanks
If it's not broken, fix it until it is.


My Blog
Previous
Reply
Map
View

Click here to load this message in the networking platform