Joined: 26 May 2014
Location: Australia
Online Status: Offline
Posts: 5
Topic: true or false result Posted: 31 Jan 2017 at 3:01pm
Hi All, i am try to create a "TRUE/FALSE" formula to display a logo based on "Franchise" in ONLY the first row of data. there could be multiple rows of data and franchises as shown below.
Joined: 19 Dec 2008
Online Status: Offline
Posts: 9053
Posted: 01 Feb 2017 at 2:53am
You seem to be saying that you have a column called rownum as an integer type and you are not using the special field n crystal as recordnumber.
The previous seems unnecessary unless you have multiple rows with the value of 1 and you only want the first one. YUO should just be able to use this:
{tblDocRigDocumenti001.rownum}1 and {tblDocRigDocumenti001.Franchise} = 68
If you need to stick with what you had and your rownum is your sorted on field you could try:
if Previous({tblDocRigDocumenti001.rownum}) = -1 and
{tblDocRigDocumenti001.rownum} = 1 and{tblDocRigDocumenti001.Franchise} = 68 then
S:=True
Joined: 26 May 2014
Location: Australia
Online Status: Offline
Posts: 5
Posted: 01 Feb 2017 at 10:43am
Hi DBlank and thanks for the quick response.
i did not write the original formula but as i understand it, the way it was written was to "force" crystal to only look at the FIRST line, then read the franchise.
i have substituted "recordnumber" and the result is still false (in the case below should be true)
EG: booleanVar S;
if recordnumber = 2 and
{tblDocRigDocumenti001.franchise} = 68 then
S:=True
else S;
i have also tried both of your suggestions above and both return a "blank" field??
EG: the field is set to "boolean Text: true or false" but when run results in neither a true or false result??
Joined: 26 May 2014
Location: Australia
Online Status: Offline
Posts: 5
Posted: 01 Feb 2017 at 11:51am
i think i see were the confusion is...
the logo is in the page header which is were the formula needs to be.
if it is at line level it works fine, (for line 1 and "68") however at page header level it is reading ALL lines which is (i think) why i keep getting the "FALSE" result.
Joined: 19 Dec 2008
Online Status: Offline
Posts: 9053
Posted: 02 Feb 2017 at 2:28am
So you want to know for the entire data set that if record for rownum 1 has a franchise of 68 and display an image in the page header?
As long as you have no groups try adding a formula as
//LogoFind
if {tblDocRigDocumenti001.rownum}=1 and {tblDocRigDocumenti001.Franchise} = 68 then 1 else 0
sum this formula and use the result for your suppression
SUM(@LogoFind)=0
Joined: 26 May 2014
Location: Australia
Online Status: Offline
Posts: 5
Posted: 02 Feb 2017 at 1:23pm
DBlank you are a genius.. whilst i havent used the above exactly you have made me think "outside" the box.
the form can have several franchises or only 1, so what i have done is this.
on each line i have assigned a value based on the actual franchise EG:
if {tblDocRigDocumenti001.rownum}=1 and {tblDocRigDocumenti001.franchise} = 6 then 6 else
if {tblDocRigDocumenti001.rownum}=1 and {tblDocRigDocumenti001.franchise} = 15 then 15 else
if {tblDocRigDocumenti001.rownum}=1 and {tblDocRigDocumenti001.franchise} = 52 then 52 else 0
then in the Page Header i have this EG:
Sum ({@Franchise})
which will return a value ONLY from line 1 based on the formula above.
i then suppress each logo that does not equal that value...
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot delete your posts in this forum You cannot edit your posts in this forum You cannot create polls in this forum You cannot vote in polls in this forum