Technical Questions
 Crystal Reports Forum : Crystal Reports 9 through 2022 : Technical Questions
Message Icon Topic: Conditional Suppression Post Reply Post New Topic
Author Message
c16271
Groupie
Groupie
Avatar

Joined: 24 Aug 2010
Location: United States
Online Status: Offline
Posts: 48
Quote c16271 Replybullet Topic: Conditional Suppression
     Posted: 03 Mar 2011 at 5:57am
Information

Version: CR XI R2
DB: Oracle 10gR2

Background


I have multiple detail lines (a-e), which I conditionally suppress based on the formula's below (each formula is in the Suppress (No Drill-Down) section, in the section expert):

Details a


IF ({XXGL_DISTRIBUTION_DETAIL_V.JE_SOURCE_NAME} <> 'Payables')
THEN  
    TRUE

Details b

IF ({XXGL_DISTRIBUTION_DETAIL_V.JE_SOURCE_NAME} <> 'Inventory')
THEN  
    TRUE

Details c (contains everything else AND removes "duplicates" from section a and b)

IF  (({XXGL_DISTRIBUTION_DETAIL_V.JE_SOURCE_NAME}    =   'Payables')  
    OR
    ({XXGL_DISTRIBUTION_DETAIL_V.JE_SOURCE_NAME}    =   'Inventory')
THEN  
    TRUE


PROBLEM

I was recently informed that section b can be one of two things, (Inventory, WIP) or (Inventory, MTL), thus, I proceeded to create the following suppression formula, and created an extra section:

(Inventory, WIP)
details b

IF( {XXGL_DISTRIBUTION_DETAIL_V.JE_SOURCE_NAME} <> 'Inventory'
    AND
    {XXGL_DISTRIBUTION_DETAIL_V.JE_CATEGORY_NAME} <> 'WIP')

THEN
    TRUE

(Inventory, MTL)  details e (new)

IF( {XXGL_DISTRIBUTION_DETAIL_V.JE_SOURCE_NAME} <> 'Inventory'
    AND
    {XXGL_DISTRIBUTION_DETAIL_V.JE_CATEGORY_NAME} <> 'MTL')

THEN
    TRUE



My problem is that details b is still showing in cases where the record being displayed is clearly a details e record.

I'm being led to believe that you can't conditionally suppress based on two columns. Is this correct? Or does someone know of a way I can get around this issue?
IP IP Logged
DBlank
Moderator
Moderator


Joined: 19 Dec 2008
Online Status: Offline
Posts: 9053
Quote DBlank Replybullet Posted: 03 Mar 2011 at 6:23am
if you have more than the 2 values (WIP and MTL) in the {XXGL_DISTRIBUTION_DETAIL_V.JE_CATEGORY_NAME} field then those records would meet the A and E details non-suppress criteria.
IP IP Logged
c16271
Groupie
Groupie
Avatar

Joined: 24 Aug 2010
Location: United States
Online Status: Offline
Posts: 48
Quote c16271 Replybullet Posted: 03 Mar 2011 at 7:15am
Hey DBlank,

I understand, and I'm ok with that. However, I cant seem to suppress the records which meet (Inventory, WIP) or (Inventory, MTL) conditions, in their respective detail sections.

I know one work around is grouping the records by JE_SOURCE (ie. Inventory), which would then reduce my problem to suppressing by either MTL or WIP; however, it seems that the last two formula's I posted should work, right? Nevertheless, they are not working...Ouch


Edited by c16271 - 03 Mar 2011 at 7:16am
IP IP Logged
DBlank
Moderator
Moderator


Joined: 19 Dec 2008
Online Status: Offline
Posts: 9053
Quote DBlank Replybullet Posted: 03 Mar 2011 at 7:18am
do you have NULL values to deal with?
IP IP Logged
c16271
Groupie
Groupie
Avatar

Joined: 24 Aug 2010
Location: United States
Online Status: Offline
Posts: 48
Quote c16271 Replybullet Posted: 03 Mar 2011 at 7:20am
No. I NVL() null values in the view. Plus, those fields could never be NULL, considering they are required fields to post into the GL. 
IP IP Logged
DBlank
Moderator
Moderator


Joined: 19 Dec 2008
Online Status: Offline
Posts: 9053
Quote DBlank Replybullet Posted: 03 Mar 2011 at 7:37am
a couple of things to try.
first the if-then is not needed on these suppressions. these already evaluate to TRUE or FALSE, TRUE = a suppression and False = Show the row
that being said, if I understand you correctly the criteria to show section B changed to include 2 options instead of 1. You should be able to address this without adding a detailsE and just altering your detailsB suppression criteria to
NOT( {XXGL_DISTRIBUTION_DETAIL_V.JE_SOURCE_NAME} = 'Inventory'
    AND

    {XXGL_DISTRIBUTION_DETAIL_V.JE_CATEGORY_NAME} in  ['WIP','
MTL'])
 


Edited by DBlank - 03 Mar 2011 at 7:44am
IP IP Logged
c16271
Groupie
Groupie
Avatar

Joined: 24 Aug 2010
Location: United States
Online Status: Offline
Posts: 48
Quote c16271 Replybullet Posted: 03 Mar 2011 at 7:42am
I'll go ahead and try what you suggested. However, there's something I purposely left out:

The reason for all the different detail sections is because I have links to corresponding sub-reports, based on the JE_SOURCE.

Thus, a record with an Inventory source, will see on its' line a link to an Inventory sub-report; in other words, I need those sections separate, so that I can show the corresponding sub-report.

I'll report back in a few.. I'm gonna try your suggestions.
IP IP Logged
c16271
Groupie
Groupie
Avatar

Joined: 24 Aug 2010
Location: United States
Online Status: Offline
Posts: 48
Quote c16271 Replybullet Posted: 04 Mar 2011 at 7:04am
DBlank!! You are the man!
 
I went ahead and modified the conditional statement and it worked like a charm.
 
NOT({XXGL_DISTRIBUTION_DETAIL_V.JE_SOURCE_NAME} = 'Inventory' AND {XXGL_DISTRIBUTION_DETAIL_V.JE_CATEGORY_NAME} = 'MTL')
 
I didn't realize that those suppression formulas default to a boolean type. I think that's what made the difference, thanks for your help.
 
I started my CR path in October of last year, and it's been a wild ride!  
IP IP Logged
Printable version Printable version

Forum Jump
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