Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Join us in NYC Sept 4th for Qlik's AI Reality Tour! Register Now
cancel
Showing results for 
Search instead for 
Did you mean: 
manoranjan_d
Specialist
Specialist

section assess

section access requirement:

There are two types of users:

  1. Reviewers
  2. Users

Contract Details

Rupees Details

QUARTER Details

FLAG

Details

AAA

345

2016Q4

Y

BBB

7654

2017Q1

Y

CCC

9876

2017Q2

Y

DDD

765

2017Q3

N

If the Reviewers logs into the application, data should be available till the latest quarter data or with the Flag values is "N" or we can consider that as current Quarter.

If the Users logs in, data should be available only till the quarter value where Flag value is "Y".

And if the Reviewers give sign off by updating the Flag column in database as "Y" in 2017Q3 column, once the data refresh is done, both the users and Reviewers

should see the 2017Q3 quarter data with the Flag column "Y".

How can we achieve this pls provide your solution with QVW file

9 Replies
Peter_Cammaert
Partner - Champion III
Partner - Champion III

Create section access entries for all Reviewers and Users.

Users should only have entries that link to a value of 'Y' in your FLAG field.

Reviewers should have an entry for value 'Y' and an entry for value 'N'.

That way, on opening the document Users will have their data set reduced to only show those values that have been reviewed.

Reviewers will see everything.

manoranjan_d
Specialist
Specialist
Author

if i give this


Reviewers should have an entry for value 'Y' and an entry for value 'N'.


then Reviewers will see the old quarter data. but Reviewers have to see only the latest quarter.

can u understand my req peter?

Peter_Cammaert
Partner - Champion III
Partner - Champion III

Which means that when all Quarters have been reviewed and signed off (all Quarters get a 'Y' in the DB), all reviewers will be locked out of the document (no more data left to review)?

Are you sure?

manoranjan_d
Specialist
Specialist
Author

Yup.

Peter_Cammaert
Partner - Champion III
Partner - Champion III

Then for Reviewers, skip the entry with a 'Y' flag value. Just list a 'N' in the link field.

manoranjan_d
Specialist
Specialist
Author

peter once Reviewers give sign off by updating the Flag column in database as "Y" in 2017Q3 column, suppose in future he want to review the reviewed the old sign off means how he will see it.

manoranjan_d
Specialist
Specialist
Author

can i tell one suggestion which i think let me know whether it will meet our requirement?

My suggestion to this issue is create one more FLAG as FLAG2 in the backend database

If(FLAG Details =N,’’NY’ )  as FLAG2 Details

So when you load the data in qlikview we will have data like below.

CONTRACT

Details

AMOUNT

Details

QUARTER Details

FLAG Details

FLAG2 Details

AAA

345

2016Q4

Y

NULL

BBB

7654

2017Q1

Y

NULL

CCC

9876

2017Q2

Y

NULL

DDD

765

2017Q3

N

NY

Now Create section access entries for all Reviewers and Users.

Users should only have entries that link to a value of 'Y' in your FLAG field.

Reviewers should have an entry for value 'N' FLAG or an entry for value 'NY' FLAG2.

Peter_Cammaert
Partner - Champion III
Partner - Champion III

?

A moment ago you stated that Reviewers should not see the old quarter data, "... but Reviewers have only to see latest quarter". Which will it be?

Section Access is a technique to make data available to specific users, and not to other users. In the end, what you do with that data in your document is up to you as a developer. If I understand you correctly, Reviewers should focus on data to be reviewed, but should also get a chance to revisit older data (possibly for benchmarking or comparisons or whatever). In QlikView, you can use set analysis to fill a specific object with data-to-be-reviewed (Flag = N). This object may well be empty when a particular Reviewer has finished his duties in time. Other objects on other sheets however may still show historical data or other aggregations based on quarterly results, just as they do for regular Users.

IMHO you should first make sure that you have a correct and consistent description of the expected behavior of your document for different user groups. Only after that definition has been agreed upon, start implementing a solution. In many cases you will find out that the actual solution is way simpeler than you initially thought. Especially in QlikView.

Not applicable

Hi Manoranjan,

ContractDetails:

load * Inline

[

Contract Details, Rupees Details, QUARTER Details, FLAG Details

AAA, 345, 2016Q4, Y

BBB, 7654, 2017Q1, Y

CCC, 9876, 2017Q2, Y

DDD, 765, 2017Q3, N

];

Sectionaccesstable:

LOAD * INLINE [

    ROLE, FLAG Details

    USERS, Y

];

Concatenate LOAD DISTINCT

'REVIEWERS' AS ROLE,

[FLAG Details]

Resident

ContractDetails

where [FLAG Details]='N';

LET v.rows = NoOfRows('Sectionaccesstable');

If v.rows = 1 THEN

CONCATENATE

LOAD * INLINE [

    ROLE, FLAG Details

    REVIEWERS, Y

];

END IF;

use the table 'Sectionaccesstable' to create section access in your report. I tested this and works.