Object Manager Advanced v10.03 (trial till 15-11-2017)

145791012

Comments

  • einsTeIn.NETeinsTeIn.NET Member Posts: 1,050
    zeon wrote:
    Well, part of the problem is also that we do not update in bundles, but make periodic updates when the customer approves an issue. That's why it often happens that we both have a change in an object that is ready for release and at the same time we are developing in that object.
    Ok, I understand your point. We have a period of time (two weeks) right before the release of the next bundle update where no object will be changed. All users receive our last reminder email that they have to test and approve their ordered changes within the next two weeks. Otherwise these changes will not be part of the release.
    So, in general the milestone date for the development team is different to the milestone date of the next release. All development that isn't ready to transport two weeks before the next release date will also not be part of that release.
    And of course we have another workflow for urgent bug hotfixes. Those objects could be transported to test and to live alongside the release. We mark all of those objects by the Version List of the next release because they'll be part of the next release anyway.
    "Money is likewise the greatest chance and the greatest scourge of mankind."
  • einsTeIn.NETeinsTeIn.NET Member Posts: 1,050
    Hi,

    I did once see something similar but it was not reproducible.

    Does the reference remain when you press Ctrl+F5 (Refresh) on both where used cards. If so can you please send me the objects in text format?

    Thanks.
    Hi Reijer,

    I moved that part of our solution to a NAV standard database and removed step by step all the things that aren't responsible for that bug. Now it's possible to reproduce it. Please try the following steps in a NAV standard database:
    1. Create a new field within VLE (T25) of Type Code10 named "Field-Test".
    1a. "Where Used" shows 0 Times Used.
    2. Create a new table, PK doesn't matter. Create a new field within that new table, same ID and same Name than your field in VLE, but Type Boolean.
    2a. "Where Used" still (after Refresh) shows 0 Times Used.
    3. Create a new function within your new table, Name doesn't matter. Create a new local variable for that new function of DataType Record and Subtype "Vendor Ledger Entry". Write some lines of Code to that function. You have to use your new local variable and your Boolean field at least one time, e.g.
    VendLedgEntry.CALCFIELDS("Remaining Amount");
    
    IF "Field-Test" THEN
      Description := 'Field-Test is TRUE'
    ELSE
      Description := 'Field-Test is FALSE';
    
    3a. "Where Used" still (after Refresh) shows 0 Times Used.
    4. Create a new field within the Vendor Ledger Entries Form, paste your new field from step 1 in.
    4a. "Where Used" shows (after Refresh) 2 Times Used. One line in the Drill Down Form refers to your new table which is wrong.

    I hope this helps to analyse that issue.
    "Money is likewise the greatest chance and the greatest scourge of mankind."
  • reijermolenaarreijermolenaar Member Posts: 256
    Hi Einstein,

    I did what you described but it doesn’t gives me the wrong reference.
    Can you please send me (or post) the table in text format that you describe at step 3.
    Reijer Molenaar
    Object Manager
  • einsTeIn.NETeinsTeIn.NET Member Posts: 1,050
    Here you go...
    OBJECT Table 50000 Field Test Table
    {
      OBJECT-PROPERTIES
      {
        Date=27.04.11;
        Time=14:44:48;
        Modified=Yes;
        Version List=TEST;
      }
      PROPERTIES
      {
      }
      FIELDS
      {
        { 1   ;   ;Code                ;Code20        ;CaptionML=[ENU=Code;
                                                                  NLD=Code];
                                                       NotBlank=Yes }
        { 2   ;   ;Description         ;Text80        ;CaptionML=[ENU=Description;
                                                                  NLD=Omschrijving] }
        { 50000;  ;Field-Test          ;Boolean       ;Description=TEST }
      }
      KEYS
      {
        {    ;Code                                    ;Clustered=Yes }
      }
      CODE
      {
    
        PROCEDURE FieldTestFunction@1161020000();
        VAR
          VendLedgEntry@1161020000 : Record 25;
        BEGIN
          VendLedgEntry.CALCFIELDS("Remaining Amount");
    
          IF "Field-Test" THEN
            Description := 'Field-Test is TRUE'
          ELSE
            Description := 'Field-Test is FALSE';
        END;
    
        BEGIN
        END.
      }
    }
    

    I did it in an NAV 5.01 standard database.
    "Money is likewise the greatest chance and the greatest scourge of mankind."
  • reijermolenaarreijermolenaar Member Posts: 256
    No, I now used a fresh NAV5.01 database but still getting just 1 result.
    Which version of the OMA do you use?
    Reijer Molenaar
    Object Manager
  • einsTeIn.NETeinsTeIn.NET Member Posts: 1,050
    Hmm... I'm not quite sure. How could I check it? In Version List there is OMA6.01.
    "Money is likewise the greatest chance and the greatest scourge of mankind."
  • reijermolenaarreijermolenaar Member Posts: 256
    Ah, that's why...
    This is solved in version 7.
    Reijer Molenaar
    Object Manager
  • CailleanCaillean Member Posts: 36
    Hi,

    we are using OMA 7.02. with our NAV 4.00SP3 database. OMA has been installed with the objetcts for NAV4.00SP2.
    At the moment we are planning a technical update to 4.00SP3(5.0SP1).

    What happens to OMA? Do we have to replace the OMA-objects with the OMA objects for NAV5.00?
    Has anyone experiences with OMA + technical update? Is there anything else special to be considered?
  • reijermolenaarreijermolenaar Member Posts: 256
    Hi,

    Yes, you can import the "OMA7.02 NAV5.0" objects.
    No need to upgrade or what so ever.

    The number of the fob correspondents only with the version of your client.
    Reijer Molenaar
    Object Manager
  • CailleanCaillean Member Posts: 36
    Hi everbody,

    I hope somebody can help me again ](*,)

    I am Using Object Manager Advance (Version 7.02) in a german Navision database.
    Unfortunately objects are in englisch or dutch only and in the objects I received there are no names for controls etc.

    For at least being able to do the setup I have change the language of the client to english. Otherwise all menue items are empty and forms can't be opened because of missing control names.
    Now I found out, that OMA ist coming with a comfortable translation tool. =D>

    That's why I tried zu "translate" the objects (englisch caption = german caption). I could already define a couple of rules --> a lot of the missing Captions could be calculated.

    Afterwards you have to export the changes:
    "When you are ready you export the changes you made by pressing the export button and save the translation file."

    That's the point where my problems start: the exported Translation File always is empty (0KB) :-k

    Can anybody help please? [-o<
  • reijermolenaarreijermolenaar Member Posts: 256
    Hi Caillean,

    Only changed captions and names are exported from the Translation Tool.
    Did you change a caption?
    Reijer Molenaar
    Object Manager
  • CailleanCaillean Member Posts: 36
    I didn't changed Captions directly. I Just defined some rules. I would like to export the calculated Captions.
    Is there a special function to accept them as new caption?

    Edit (just a couple of minutes later): Found the right Function: Functions --> validate Caption --> With Calcuilated Captions \:D/
    Thanks for your helpful hint. Documentation seems a bit uncomplete at this point.
  • CailleanCaillean Member Posts: 36
    Hi,
    another day - another question:
    I was trying out how modifications are locked with several setup settings. Now i would appreciate if i could do a roll back - and start witz modification entry No. 1 again.
    I deleted the entries from Table 11102042 (OM - Modification) - but unfortunately the entry number can't be resetted this way.

    Is there another way to clean up OM - Modification from my first tests?
  • reijermolenaarreijermolenaar Member Posts: 256
    Is it an SQL database?

    Then you can search for:
    http://www.google.com/search?q=reset+identity+sql
    Reijer Molenaar
    Object Manager
  • CailleanCaillean Member Posts: 36
    Yes, it's a sql database.
    But I have noch acess to that part of the database. I could only do some changes from Navision.
    Well than I will have to live with my tests :whistle:
  • reijermolenaarreijermolenaar Member Posts: 256
    You can also run T-SQL from the "Action Worksheet" in the Object Manager.
    Create an action of type "Execute SQL Query" with the following "SQL Query":
    DBCC CHECKIDENT ([OM - Modification], RESEED, 0)
    
    And press Start.
    Reijer Molenaar
    Object Manager
  • CailleanCaillean Member Posts: 36
    I should have known that OMA is that mighty :lol:
    Thank's a lot. Everthing is fine now \:D/
  • einsTeIn.NETeinsTeIn.NET Member Posts: 1,050
    Hi Reijer,

    I just tested the new 7.02 trail and I see that every Object is editable but when you go to design mode the only thing you could see is the word "PROTECTED". How did you do that? I'm very interested in this solution because we have some "customers" that have their own developer license but they should not change anything on some objects.
    "Money is likewise the greatest chance and the greatest scourge of mankind."
  • reijermolenaarreijermolenaar Member Posts: 256
    Hi,

    We have used Object Squeeze to do this.

    http://www.mibuso.com/dlinfo.asp?FileID=1162
    Reijer Molenaar
    Object Manager
  • einsTeIn.NETeinsTeIn.NET Member Posts: 1,050
    Hi Reijer,

    another question: You know in OMA there's an Action Worksheet where you could setup some actions that have to be performed after or before a transport. Now I tried to divert this Action Worksheet from its intended use to do something like a batch report. Unfortunately some of our countries do not have a developer license and when you want to lookup the No. of Records you'll receive an error message:
    You do not have permission to modify the 'Table' Form.
    This happens because you try to write "! CHECK OBJECT VALID !" into the Version List of Form "OM - Show Table Data". What is the reason for this?

    P.S. It's OMA6.01.
    "Money is likewise the greatest chance and the greatest scourge of mankind."
  • reijermolenaarreijermolenaar Member Posts: 256
    Hi einsTeIn,

    When you drilldown on the “No. of Records” the OMA will create a new form to show the table.
    The string "! CHECK OBJECT VALID !" will prevent that this object modification will be traced and saved to the modifications table.
    Reijer Molenaar
    Object Manager
  • einsTeIn.NETeinsTeIn.NET Member Posts: 1,050
    Ok, so that means in fact, if you don't have at least the form designer within your license you won't be able to use this functionality, right?
    Why do you create a new form? Wouldn't it be better to use the standard Lookup form?
    "Money is likewise the greatest chance and the greatest scourge of mankind."
  • reijermolenaarreijermolenaar Member Posts: 256
    Ok, so that means in fact, if you don't have at least the form designer within your license you won't be able to use this functionality, right?
    The object will be created in text format and imported/compiled with the automation. I think you also need to be allowed to import objects in text format.
    Why do you create a new form? Wouldn't it be better to use the standard Lookup form?
    No, that is not possible. It has to work for all tables. The Lookup form will only work in combination with a variable of type record. And beside of that, the form that is used has more options. You can e.g. im- and export blob fields. Export the data in xml format. And best of all, change data without validation!
    Reijer Molenaar
    Object Manager
  • einsTeIn.NETeinsTeIn.NET Member Posts: 1,050
    Ok, so that means in fact, if you don't have at least the form designer within your license you won't be able to use this functionality, right?
    The object will be created in text format and imported/compiled with the automation. I think you also need to be allowed to import objects in text format.
    As far as I understand this form will be deleted afterwards. So, the normal user will not notice anything of these preparative things. Do you see any chance to let a normal user (maybe without a developer license) use this functionality? E.g. give some objects more permissions when you compile them? Or create this form within the customer's range of numbers? Or something else?

    Why do you create a new form? Wouldn't it be better to use the standard Lookup form?
    No, that is not possible. It has to work for all tables. The Lookup form will only work in combination with a variable of type record. And beside of that, the form that is used has more options. You can e.g. im- and export blob fields. Export the data in xml format. And best of all, change data without validation!
    Hmmm... I see the advantage of this form. You are right.
    "Money is likewise the greatest chance and the greatest scourge of mankind."
  • reijermolenaarreijermolenaar Member Posts: 256
    Or create this form within the customer's range of numbers?
    Yes, if you enable the setting “Import Transport with SQL Trigger” in the setup it should do this.
    Reijer Molenaar
    Object Manager
  • CailleanCaillean Member Posts: 36
    Hi Reijer,

    after a couple of weeks I am just getting on doing setup and first steps with OMA.
    I created a new transport, added a Project with 3 objects (Table 50028, Report 50073 and Dataport 50021).
    When I try to create the transport files (button "Transport") I get a couple of confirms like this:

    Microsoft Dynamics NAV
    Exporting of object Table 51000 - Data Transfer Log failed.
    Do you want to continue?
    Yes No

    What is OMA doing with those objects that shouldn't be included?

    I already put table 51000 on known object export error - list.

    What is going wrong? ](*,)
  • reijermolenaarreijermolenaar Member Posts: 256
    Hi Caillean,

    Strange, it shouldn’t do anything with other objects when you transport.
    Can you see with the debugger what the Call Stack looks like when you get this confirm?
    Reijer Molenaar
    Object Manager
  • CailleanCaillean Member Posts: 36
    The Confirm comes from

    Codeunit 11102050 OM - Source Control\AddObject(Object,ActionType,OnlyIfOutdated,ErrorType)

    ... and has been promted from

    Codeunit 11102062 OM - Modification Management\SaveModification(VarModification,NewModification)

    At the first look it's tyring to get all objects modified = yes.
  • reijermolenaarreijermolenaar Member Posts: 256
    Ah, before you can transport all pending modifications has to be assigned to a project or ignored.
    You will have to open the “Assign Modifications” form and ignore or assign them.
    Reijer Molenaar
    Object Manager
  • CailleanCaillean Member Posts: 36
    That makes sense.
    But when I start the assign modifications form i get the same error :-(

    ... Is that because we deleted OMA - Modifications table some weeks ago?
    [-o<
Sign In or Register to comment.