Customer Dimensions Report

vasilis6669vasilis6669 Member Posts: 109
Hi,

I am new in navision and my first task is to create a customer report which filters data based on the customer dimensions. I am using the cronus company and the 3 dimensions are Area, CustomerGroup and Department.

I created the report but the customer dimensions values are one line below than expected. for example customer no 20000 has the dimensions of customer No 10000 and so on.

For the creation of the report i used the following dataitems - Name
1) Customer - <Customer>
2) Default Dimension - DimArea
3) Default Dimension - DimCustomerGroup
4) Default Dimension - DimDepartment

each of the Default Dimension is joined with the customer NO. i.e
Dataitemlink = No.=FIELD(No.)
Also each of the Default Dimension OnPredataItem() Function filters

MemberFilterText :='AREA';
SETFILTER(DimArea."Dimension Code",'%1',MemberFilterText);

MemberFilterText :='CUSTOMERGROUP';
SETFILTER(DimCustomerGroup."Dimension Code",'%1',MemberFilterText);

MemberFilterText :='DEPARTMENT';
SETFILTER(DimDepartment."Dimension Code",'%1',MemberFilterText);

Also, apart from the line problem i want to be able on each filter Tab i.e.
Area,CustomerGroup,Department to select the values within dimension. For exable in the area tab, the user should be able to select the codes within area etc

Is there a way to attach some screenshots so i can explain it better?

Regards,
Vasilis

Answers

  • DaveTDaveT Member Posts: 1,039
    Hi Vasilis,

    Nav is unsual in that there are (nearly) always a number of ways to solve a problem.

    If I have picked this up correctly, you want to filter down a customer list by a number of dimensions. You can acheive this by adding the filter on one dataitem of the default dimension as Dimension Code AREA|CUSTOMERGROUP|DEPARTMENT and simlarly with the dimension value. The customer dataitem would follow the default dimension dataitem and indent it using the link you worked out. This is not very user freindly so you could develop a request form if needed.

    Unfortunately you cannot post screenshots but you can post C/AL code

    Hope this helps

    Welcome to NAV (and Mibuso) :mrgreen:
    Dave Treanor

    Dynamics Nav Add-ons
    http://www.simplydynamics.ie/Addons.html
  • vasilis6669vasilis6669 Member Posts: 109
    Hi,

    Yes, one way is to use the |(or) condition. I used the
    DataItemTableView=
    WHERE(Dimension Code=FILTER(AREA)) on each tab accordingly. well There are so many things in nav i better start used to it.

    Thanks for your help.

    I have some more questions.
    when i am opening Microsoft SQL Server Option for the CSIDE Client and then File --> Database--> Open (set the correct seeting) i receive the following error:

    One of the system ANSI(1253) /OEM737 code pages on your computer does not match the 1252 code page of the Latin_General_CS_AS collation,
    for the Demo Database Nav(5.0) database.

    The nav DB was installed on a SQL2000 instance. Shall i post this in the SQL forum?



    Regards,
    Vasilis
  • DaveTDaveT Member Posts: 1,039
    Hi Vasilis,

    Looks like a windows language problem i.e. 1252 v's 1253 (not on my machine)

    Normally you create a post per issue/problem and in the correct forum. If your happy an issue is solved/resolved then amend the subject of the first post with [Solved]- it's lets users know you're sorted out.
    Dave Treanor

    Dynamics Nav Add-ons
    http://www.simplydynamics.ie/Addons.html
  • vasilis6669vasilis6669 Member Posts: 109
    Hi,

    Regarding the c/client database connection i changed the pc regional settings langudage from Cyprus to U.K.(English)

    I noticed that when joing two data items for example table 'Item' and table 'vendor', in order to get the 'items vendor name' if the 'Item' dataitem is first in the list and 'vendor' is second, it skips the results by one line. If the 'vendor' dataitem is first in the list and 'Item'is second then it does not skip a line.

    Can someone please explain how an inner join or left outer join works in navision

    Regards,
    Vasilis
  • DaveTDaveT Member Posts: 1,039
    Hi Vasilis,

    Reports work like this ..

    e.g.
    Dataitem1
    __dataitem2
    ____dataitem3

    the report will print as

    Dataitem1.1
    __dataitem2.1
    ____dataitem3.1
    ____dataitem3.2
    ____dataitem3.3
    ____...
    __dataitem2.2
    ____dataitem3.1
    ____dataitem3.2
    ____dataitem3.3
    ____...
    Dataitem1.3
    __...

    (Sorry about the underscore - the post strips out spaces :( )

    You then have to decide which section to put your printing into.

    Where I think your confusion arises is that you do not have to declare all item that print as a dataitem. So in your case where you want to print the vendor name then simply put the code
    vendor.get( item."vendor no." );
    
    in the onaftergetrecord trigger of the item dataitem. (Vendor is a variable of type record - subtype vendor )

    Hope this clears it up for you
    Dave Treanor

    Dynamics Nav Add-ons
    http://www.simplydynamics.ie/Addons.html
  • vasilis6669vasilis6669 Member Posts: 109
    Hi,

    Yes,i was confused with the dataitems. I used the vendor record and the report works fine. I come from a .net VS2005 background and i thought that dataitems is like table adapters

    Thanks for your help


    Regards,
    Vasilis
  • DaveTDaveT Member Posts: 1,039
    Glad to help :mrgreen:
    Dave Treanor

    Dynamics Nav Add-ons
    http://www.simplydynamics.ie/Addons.html
Sign In or Register to comment.