Add Company Logo Into Report Design

This question is answered

Hello everybody,

i have a problem with my reports in dynamics ax 2012. i want to customize a standar reports by adding a company logo as header report. the report design by html code, ex class HcmSkillGapByJobSkillHTMLGenerate. i took company logo from companyImage table so i dont need to add image into resources. i already add html tag (img src = 'image name') but its not work. report not display company logo.

any body can help me to solve that problem?

thanks you

 

Hanny

Verified Answer
  • Hi,

    I will present you a solution that I've done to customize a report. I use a DataProvider class on the Dynamics AX Side with a TmpDB table.

    1. Add the Bitmap Extended Data Type to my table.

    2. In the ProccesReport method of my DataProvider class, I populate that field with the CompanyLogo but only on the first record (before going in the while/for/query statement.

    In the VisualStudio side:

    1. Add a Image

    2. set the source from your DateSet and use the method "=First(dataset.field)" to take only value from the first record.

    The advantage is to not duplicate le logo on each record of your TmpTable.

    If you don't use a DataProvider class, you can try to make some join table in yourQuery objet. (use dataAreaId field to join the CompanyInfoTable ).

    Best regards

    Fx

All Replies
  • Hi,

    I will present you a solution that I've done to customize a report. I use a DataProvider class on the Dynamics AX Side with a TmpDB table.

    1. Add the Bitmap Extended Data Type to my table.

    2. In the ProccesReport method of my DataProvider class, I populate that field with the CompanyLogo but only on the first record (before going in the while/for/query statement.

    In the VisualStudio side:

    1. Add a Image

    2. set the source from your DateSet and use the method "=First(dataset.field)" to take only value from the first record.

    The advantage is to not duplicate le logo on each record of your TmpTable.

    If you don't use a DataProvider class, you can try to make some join table in yourQuery objet. (use dataAreaId field to join the CompanyInfoTable ).

    Best regards

    Fx

  • Hi Fx,

    Your suggestion of using the DataProvider class was implemented when our system was deployed. I would now like to change the logo in the report. How can I change the bitmap/image in the temp table please? Thanks in advance.

    Alex

  • Hi,

    The TmpTable is fill each time you call your report. No data was store in it.

    When you call your report, the fields are fill in the ProccesReport method (Step 2 in my previous answer).

    So in your current version your Logo may come from the following table field CompanyInfoTable.CompanyLogo.

    For example you have some code like this:  myTmpTable.logoField = CompanyInfo.CompanyLogo;

    So if you want to change it, you can :

    • Change the companyLogo in your company parameters
    • Modify your ProcessReport to modify the source of the Bitmap to take it from another source.

    Happy New year !

    Fx

  • Thank you Fx. That worked great!!! Happy New year to you too :)