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

Announcements
Qlik GA: Multivariate Time Series in Qlik Predict: Get Details
cancel
Showing results for 
Search instead for 
Did you mean: 
katetsan
Creator
Creator

Create income statement table with common size percentage

Hi all,

I have a set of raw data with format as below <table 1>. I'm wondering if there's anyway to create an income statement table with common size percentage as below <table 2>.

Thanks a lot!

<Table 1>Raw data format

ItemRevenuesCostsExpense
A90208
B100259
C1103511

<Table 2> Income statement table with common size%

NumberHeader 3

Revenues

300100%
Costs8026.7%
Gross22073.3%
Expense289.3%
Profit19264%
1 Solution

Accepted Solutions
Kushal_Chawda

Create one inline table in script

1st method:

LOAD * inline [

Dim

1

2

3

4

5 ];

create the straight table

Dimension:

Pick(Dim,'Revenues','Costs','Gross','Expense','Profit')

Expression:

1) Number :

Pick(Dim,

Sum(Revenues),

Sum(Costs),

Sum(Revenues)-Sum(Costs),

Sum(Expense),

Sum(Revenues)-Sum(Costs)-Sum(Expense))


2) %

Pick(Dim,

Sum(Revenues)/Sum(Revenues),

Sum(Costs)/Sum(Revenues),

(Sum(Revenues)-Sum(Costs))/Sum(Revenues),

Sum(Expense)/Sum(Revenues),

(Sum(Revenues)-Sum(Costs)-Sum(Expense))/Sum(Revenues))



2nd method:


create the straight table

Dimension:

Valuelist('Revenues','Costs','Gross','Expense','Profit')

Expression:

1) Number :

Pick(match(Valuelist('Revenues','Costs','Gross','Expense','Profit'),'Revenues','Costs','Gross','Expense','Profit'),

Sum(Revenues),

Sum(Costs),

Sum(Revenues)-Sum(Costs),

Sum(Expense),

Sum(Revenues)-Sum(Costs)-Sum(Expense))


2) %

Pick(match(Valuelist('Revenues','Costs','Gross','Expense','Profit'),'Revenues','Costs','Gross','Expense','Profit'),

Sum(Revenues)/Sum(Revenues),

Sum(Costs)/Sum(Revenues),

(Sum(Revenues)-Sum(Costs))/Sum(Revenues),

Sum(Expense)/Sum(Revenues),

(Sum(Revenues)-Sum(Costs)-Sum(Expense))/Sum(Revenues))


Note: for % expression, go to chart properties->Number tab -> check Fixed to 1 and check show in % option


Update: Updated % expression


View solution in original post

10 Replies
devarasu07
Master II
Master II

Hi,

Try to use cross table method,

Data:

CrossTable(Type, Amount)

LOAD * INLINE [

    Item, Revenues, Costs, Expense

    A, 90, 20, 8

    B, 100, 25, 9

    C, 110, 35, 11

];

Capture.JPG

katetsan
Creator
Creator
Author

Hi Devarasu,

Thanks for your reply.

However, there're over 1000 rows of data flow, it's hard to use load inline scripts.

In addition, the data flow is like the list of transaction without summary.

Is there any alternative suggestion?

Thanks a lot!

devarasu07
Master II
Master II

Hi

You can use excel/other data source for your live report. using cross table method it should n off rows. give a try and let us know if any issue. Thanks

effinty2112
Master
Master

Hi Kate,

You can get a straight table like this:

 

CategoryNumberHeader3
Revenues300100%
Costs8026.7%
Gross22073.3%
Expense289.3%
Profit19264.0%

The dimension Category is a calculated dimension:

=ValueList('Number','Header3')

These are the expressions:

Revenues:

Pick(Match(ValueList('Number','Header3'),'Number','Header3'),

Sum(Revenues),num(1,'0%'))

Costs:

Pick(Match(ValueList('Number','Header3'),'Number','Header3'),

Sum(Costs),num(Sum(Costs)/ Sum(Revenues),'0.0%'))

Gross:

Pick(Match(ValueList('Number','Header3'),'Number','Header3'),

Sum(Revenues)-Sum(Costs),num((Sum(Revenues)-Sum(Costs))/ Sum(Revenues),'0.0%'))

Expense:

Pick(Match(ValueList('Number','Header3'),'Number','Header3'),

Sum(Expense),num(Sum(Expense)/ Sum(Revenues),'0.0%'))

Profit:

Pick(Match(ValueList('Number','Header3'),'Number','Header3'),

Sum(Revenues)-Sum(Costs)-Sum(Expense),num((Sum(Revenues)-Sum(Costs)-Sum(Expense))/ Sum(Revenues),'0.0%'))

In the Presentation tab of the straight table check the Horizontal box.

good luck

Andrew

Kushal_Chawda

Create one inline table in script

1st method:

LOAD * inline [

Dim

1

2

3

4

5 ];

create the straight table

Dimension:

Pick(Dim,'Revenues','Costs','Gross','Expense','Profit')

Expression:

1) Number :

Pick(Dim,

Sum(Revenues),

Sum(Costs),

Sum(Revenues)-Sum(Costs),

Sum(Expense),

Sum(Revenues)-Sum(Costs)-Sum(Expense))


2) %

Pick(Dim,

Sum(Revenues)/Sum(Revenues),

Sum(Costs)/Sum(Revenues),

(Sum(Revenues)-Sum(Costs))/Sum(Revenues),

Sum(Expense)/Sum(Revenues),

(Sum(Revenues)-Sum(Costs)-Sum(Expense))/Sum(Revenues))



2nd method:


create the straight table

Dimension:

Valuelist('Revenues','Costs','Gross','Expense','Profit')

Expression:

1) Number :

Pick(match(Valuelist('Revenues','Costs','Gross','Expense','Profit'),'Revenues','Costs','Gross','Expense','Profit'),

Sum(Revenues),

Sum(Costs),

Sum(Revenues)-Sum(Costs),

Sum(Expense),

Sum(Revenues)-Sum(Costs)-Sum(Expense))


2) %

Pick(match(Valuelist('Revenues','Costs','Gross','Expense','Profit'),'Revenues','Costs','Gross','Expense','Profit'),

Sum(Revenues)/Sum(Revenues),

Sum(Costs)/Sum(Revenues),

(Sum(Revenues)-Sum(Costs))/Sum(Revenues),

Sum(Expense)/Sum(Revenues),

(Sum(Revenues)-Sum(Costs)-Sum(Expense))/Sum(Revenues))


Note: for % expression, go to chart properties->Number tab -> check Fixed to 1 and check show in % option


Update: Updated % expression


Kushal_Chawda

Updated expression in my OP

katetsan
Creator
Creator
Author

Hi Kushal,

It works perfectly. Thanks a lot!

katetsan
Creator
Creator
Author

Hi Andrew,

It works !! Thanks A LOT!!!