Source Table involved in Navigation Pane

liizzliizz Member Posts: 125
edited 2012-06-01 in NAV Three Tier
Hello all,

Is there any table which has been built such that we can know which users are assigned to the respective Navigation Pane.

I want to replicate security present on production environment same as my test db.

I will import them through a dataport. I have already done a dataport export on these tables: User, Member Of and User Role.

But for Navigation Pane, I dont know how to proceed.

Please help.

Thanks
Liizz

Comments

  • ufukufuk Member Posts: 514
    User Menu Level table stores the Nav. Pane assignment info. in a BLOB field. I think you can't parse it in menuitem detail level because it's in binary form but you can transfer pane assignments across user and databases.
    Ufuk Asci
    Pargesoft
  • liizzliizz Member Posts: 125
    Can you please specify how I can transfer pane assignments across user and databases?

    Please help.

    Thanks
    Liizz
  • ufukufuk Member Posts: 514
    Simply by copying from one record to another if you are in same database (by code or manually). If separate databases is the case, then you can use ado. and transfer records. If you do not want to use ado you can export blob to an object file and import back it into the destination(not sure if it works - you have to test it)
    Ufuk Asci
    Pargesoft
  • ufukufuk Member Posts: 514
    I have just tested it and it seems export and import works properly:
    SourceUML.CALCFIELDS(Object);
    SourceUML.Object.EXPORT( 'C:\uml.bin');
    
    DestUML.Object.IMPORT('C:\uml.bin');
    DestUML.MODIFY;
    
    Ufuk Asci
    Pargesoft
  • liizzliizz Member Posts: 125
    Hi,

    Thanks for your suggestions.

    My test and live environment are on a separate database.

    The codes you shared on the the thread, should it always be exported/imported in .bin format if it is in a blob format?
    ufuk wrote:
    SourceUML.CALCFIELDS(Object);
    SourceUML.Object.EXPORT( 'C:\uml.bin');
    
    DestUML.Object.IMPORT('C:\uml.bin');
    DestUML.MODIFY;
    

    Thanks
    Liizz
  • ufukufuk Member Posts: 514
    It is stored as binary in BLOB so I used bin format.
    Ufuk Asci
    Pargesoft
  • liizzliizz Member Posts: 125
    Both my test and live environment are accessed using Remote Desktop connection with a Terminal Server login.

    But how should I specify the path in my codeunit? I wish to save it on Desktop of the Terminal Server..
    ufuk wrote:
    SourceUML.Object.EXPORT( [color=#FF0000]'C:\uml.bin'[/color]);
    DestUML.Object.IMPORT([color=#FF0000]'C:\uml.bin'[/color]);
    DestUML.MODIFY;
    

    Thanks
    Liizz
  • ufukufuk Member Posts: 514
    I'm not sure if desktop is a good choice. (access problems etc) If a shared folder is available then you can use the UNC syntax: \\ComputerName\SharedFolder\Resource

    If you still want to use desktop replace the SharedFolder part with the desktop path. (or use ip instead of ComputerName)
    Ufuk Asci
    Pargesoft
  • liizzliizz Member Posts: 125
    Ufuk,

    I have used your codes(To export data from User Menu Level) in a codeunit:

    SourceUML.Object.EXPORT('C:\uml.bin');

    But when I run the object, I got an error message 'The User Menu Level does not exist. Identification fields and values: ID='', ID Type='0, Level='0'' '.

    Please help how to solve it.

    Thanks
    Liizz
  • ufukufuk Member Posts: 514
    Liizz,

    I can of course tell you what to do in next step but only for this topic and only when I'm available. But this is a very basic error and you should better read documentation about application development in NAV. There are many books for this and I think they can help you more than me.
    Ufuk Asci
    Pargesoft
Sign In or Register to comment.