?
Solved

Crystal Reports Shared CurrencyVar breaks formula when passing negative number

Posted on 2014-01-24
6
Medium Priority
?
887 Views
Last Modified: 2014-02-02
I have multiple subreports passing shared numbervar and currencyvar...
The Billing Rate subreport's @Rate formula is the following:
if {@hours}>0
then ({Orders.OrderTotal}-({@materials}+{@misccost}))/{@hours}
else 100


@materials is a shared currencyvar
@misccost is a shared currencyvar
@hours is a shared numbervar

The subreport and formula work fine until @misccost is a negative number (from debit memo)...

Is there a method of formatting the @misccost shared currencyvar so that the negative will allow the @Rate value to be displayed? Or is something else breaking the formula?

See attached for reference.
Subreport.pdf
0
Comment
Question by:Lee Ingalls
  • 3
  • 3
6 Comments
 
LVL 101

Assisted Solution

by:mlmcc
mlmcc earned 1000 total points
ID: 39807790
The negative value is not (at least I don't think it is) breaking the formula.

Is the Order Amount NULL?

Try setting the Exceptions For NULL option to DEFAULT FOR NULL

mlmcc
0
 
LVL 9

Author Comment

by:Lee Ingalls
ID: 39815383
Thanks mlmcc,

I set the "Exceptions For NULL option to DEFAULT FOR NULL" for the main and subreports; though it did not necessarily fixed the problem it did display 0.00 rather than nothing. That gave me an indication where to look. At that point I started breaking down each formula to see where they were failing.
0
 
LVL 101

Expert Comment

by:mlmcc
ID: 39815453
Are you able to fix the issues?

mlmcc
0
Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

 
LVL 9

Accepted Solution

by:
Lee Ingalls earned 0 total points
ID: 39815872
What ultimately fixed the report was rewriting the Main Report @Material Costs formula to include NULL handling.

@Material Costs
from:
Sum ({@Misc Costs})+({@poval})

to:
IF ISNULL ({@Misc Costs})
THEN {@POVal}
ELSE IF ISNULL ({@POVal})
THEN ({@Misc Costs})
ELSE ({@Misc Costs})+{@POVal}

Whenever @Misc Costs was 0.00 my Main Report formulas:
@Material Costs
@Total Costs
@Gross Profit
@Billing Rate
all displayed NULL. Once I handled the NULL's each dependent value was passed to the subsequent formula.

I wouldn't have been able to see this until your suggestion to check the Report Options "Exceptions For NULL option to DEFAULT FOR NULL". How do you suggest I award the solutions points?

Regards, BudELee
0
 
LVL 101

Expert Comment

by:mlmcc
ID: 39816149
ANy way you desire.  Since my suggestion helped you can select it as assisted solution with your comment as the solution.  I believe you can award partial points if you desire.

mlmcc
0
 
LVL 9

Author Closing Comment

by:Lee Ingalls
ID: 39827473
mlmcc's suggestion, though not solving the problem directly lead to my being able to solve it.
0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I hate sub reports and always consider them the last resort in any reporting solution.  The negative effect on performance and maintainability is just not worth the easy ride they give the report writer.  Nine times out of ten reporting requirements…
Hello everyone, Hope you find this as helpful as we did. We have on the company I work for an application built in Delphi V with Crystal Reports 8. We all know that Crystal & Delphi can be temperamental sometimes and the worst thing is, nearly…
This Micro Tutorial will teach you how to add a cinematic look to any film or video out there. There are very few simple steps that you will follow to do so. This will be demonstrated using Adobe Premiere Pro CS6.
This video shows how to quickly and easily deploy an email signature for all users in Office 365 and prevent it from being added to replies and forwards. (the resulting signature is applied on the server level in Exchange Online) The email signat…

839 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question