Sunday, August 19, 2018

D365 Business Central: 3-Character prefix require for AppSource Apps Development

Hello Friends,

If you planning to develop extension (apps) for D365 BC of Microsoft App Source, than you have to request and register 3-Character prefix/suffix code for your organization with Microsoft

For example, at Intech-Systems we had register "INT" as our organization unique code. So, D365 BC team will reserve this code for us and we have to use this code for apps development as following.

 List of examples....


  • Object prefix must be registered with Microsoft (at least 3 digits) and must be unique (it’s globally reserved for you)

  • It can be a prefix or a suffix (you can call an object XXXMyTable or MyTableXXX)

  • You have to use it for every objects in your extension

  • This is case insensitive (you can call an object XXXMyTable or xxxMyTable)

  • You can use the prefix in any format you want (XXX_MyTableXXX-MyTableXXX.MyTableXXX MyTable etc. are all valid names)

  • You can register more than one prefix (you can have a prefix for app but I think this is not a good way to do, I prefer a prefix for company)

  • Functions in your extension objects cannot have the prefix/suffix in names (the prefix is in your object name, so you can have something like XXX-MyCodeunit.MyWonderfulFunctionNameLongAsIWant() )

  • If you have extension A that depends on extension B and extension C, and both B and C adds a function MyFunction to a standard table (Customer table for example), if you call Customer.MyFunction you receive an error on compilation (ambiguous call)

  • If you create any extended page/table object than object name should contain it.                Example - pageextension 70144371 INT ExtendItemCard extends "Item Card"

  • Use in name of action/group added in standard page/rolecenter, see the following example
  •     actions 
        { 
            addafter("Purchase Invoice") 
            { 
                group("INT Item Generator") 
                { 
                    action("INT Item Configurator List") 
                    { 
                        Caption = 'Item Configuration'; 
                        ApplicationArea = all; 
                        Image = ItemTracking; 
                        Promoted = true; 
                        PromotedCategory = Process; 
                        PromotedIsBig = true; 
                        RunObject = Page "INT Item Configurator List"; 
                    } 

  • Use in name of field added in standard table (by extended tales object)

  • Microsoft want to make you extension object name should be unique and remove the conflict between and N-number extension in app source,

    Hope this blog will help you. Write a comments if you need more help.

    Thank you,
    Keep Sharing....Keep Growing...

    7 comments:

    1. Thanks for the informative article. This is one of the best resources I have found in quite some time. Nicely written and great info. I really cannot thank you enough for sharing.
      Oracle training in btm
      Oracle Online Training
      Oracle training in chennai
      Oracle training in Bangalore

      ReplyDelete