Forum Discussion

DeBIe's avatar
DeBIe
Icon for Post Partisan rankPost Partisan
4 years ago
Solved

Requesting help for customer requirement

Hello everybody,

 

I've been spending a while thinking on how to solve a customer question. Can't get it to work like the way the customer wants to see it (check the desired result at the bottom). I have provided example data. Hopefully someone can help me.

 

I have a list of available codes per sector (template). I also have a list of companies with a sector and a code (fact table). A code can occur multiple times for a company. The customer wants to see an overview of all companies and which codes from the template have been used (including those who have not been used). There is an example below. Let me know if there further explanation needed. Thank you very much!

 

Example data

 

Template Codes (dimension)

SectorCode
11000
12000
13000
14000
1.111
1.112
2250
2275

 

 

Company Codes (fact)

CompanySectorCode
Microsoft12000
Microsoft13000
Microsoft13000
Microsoft13000
Microsoft14000
Microsoft14000
Microsoft14000
Apple1.111
Apple1.111
Google29999

 

Desired result:

CompanySectorTemplate codes

TemplateCode_IsNotInCompanyCodes(0),

TemplateCode_IsInCompanyCodes (1),
TemplateCode_IsDoubleOrMoreInCompanyCodes (2 or more)

Microsoft110000
Microsoft120001
Microsoft130003
Microsoft140003
Apple1.1112
Apple1.1120
Google22500
Google22750

 

  • Anonymous's avatar
    Anonymous
    4 years ago

    HI DeBIe,

    You can create a calculated column on the template table to lookup values from the company table, then you can write a measure to calculate the count.

    Calculate column:

     

    Company = LOOKUPVALUE('Company Code'[Company],'Company Code'[Sector],'Template Codes'[Sector])

     

    Measure formula:

     

    formula =
    CALCULATE (
        COUNTA ( 'Company Code'[Code] ) + 0,
        FILTER (
            ALLSELECTED ( 'Company Code' ),
            'Company Code'[Code]
                IN VALUES ( 'Template Codes'[Code] )
                    && 'Company Code'[Sector] IN VALUES ( 'Template Codes'[Sector] )
        )
    )

     

    Regards,

    Xiaoxin Sheng

4 Replies

  • Anonymous's avatar
    Anonymous
    Not applicable

    HI DeBIe,

    You can create a calculated column on the template table to lookup values from the company table, then you can write a measure to calculate the count.

    Calculate column:

     

    Company = LOOKUPVALUE('Company Code'[Company],'Company Code'[Sector],'Template Codes'[Sector])

     

    Measure formula:

     

    formula =
    CALCULATE (
        COUNTA ( 'Company Code'[Code] ) + 0,
        FILTER (
            ALLSELECTED ( 'Company Code' ),
            'Company Code'[Code]
                IN VALUES ( 'Template Codes'[Code] )
                    && 'Company Code'[Sector] IN VALUES ( 'Template Codes'[Sector] )
        )
    )

     

    Regards,

    Xiaoxin Sheng

    • DeBIe's avatar
      DeBIe
      Icon for Post Partisan rankPost Partisan

      Hey Anonymous ,

       

      Thank you very much for helping me. 

       

      I provided sample data in my post and I tested your logic with that sample data and it works. But for my real dataset, I am getting this error when creating the lookup column. I don't understand why it works for sample data and not for my real dataset.