Accessing the BC base application in AL for searching and debugging

Accessing the BC base application in AL for searching and debugging

Creating the base app

Since the base application is no longer available through C/Side, we must find other ways to access the source code of the base application for searching and debugging.

The cool part is that you already have access to it and let me demonstrate how you can create your own base application I a few steps.

First create a new AL project in Visual Studio Code:

Select the runtime that corresponds with the solution you need access to.

Complete the settings in the launch.json file to connect to the solution.

Then download the symbols. This will create a new folder named: .alpackages

Open the folder and drag the Microsoft_Base_Application file to a new folder. I usually create a folder in the AL folder and name it _BaseApp 15.1 if the version is 15.1.

Then rename the .app extension to .zip. All app-files are actually archives and can be opened.

You can only open the file with Winrar and you can buy your own version from here.

The archive looks like this:

Searching the base app

You can extract the content to your folder and then open it with Visual Studio Code:

As it appears, Microsoft have changed the naming convention of the files, so they have the format:

<Object Name>.<Object Type>.al

That also means that now it is no longer possible to read the object numbers from the file name, which can make it challenging to find the next vacant number. Ctrl+Space will help in some environments by suggesting the next object number when creating a new object, but it does not work in all environments.

So, how do we search for files in the base application?

The answer is Ctrl+P in Visual Studio Code, which will open a search bar that works like the search in the client. If I need the sales order pages, it is enough to search for sal or pa or in this case the salesheader.tab for the sales header table.

Selecting the file will open the object.

It is not possible to use the Go to Definition function but the search is there for a reason

One of the most awesome functions in the Visual Studio Code is the ability to search or even replace across all objects in the project. In the base app, it is the search function that gives value. Below a search is made for record “sales header” which will show all places where the sales header is declared as a variable.

Debugging the base app

In order to debug the base app, it is first necessary to connect the base-app to the service tier. This can be done from the run and debug icon:

In future versions the icon has changes and now looks like this

Click the Add configuration and the following option shows up:

Here attach to the servicetier.

Then DO NOT download symbol, instead, use Ctrl+P and select Debug without publishing.

Set a break point somewhere in the code.

And start debugging.

In the run and debug section all the usual tools are available:

  • Global variables
  • Local variables
  • Watches
  • Call Stack

Happy debugging

3,883 thoughts on “Accessing the BC base application in AL for searching and debugging

  1. Unquestionably believe that which you said. Your favourite reason seemed to be on the internet the
    simplest thing to consider of. I say to you, I
    definitely get irked even as other people consider issues that
    they plainly don’t know about. You managed to hit the nail upon the highest
    and outlined out the whole thing with no need side effect
    , folks could take a signal. Will likely be back to get more.
    Thank you

  2. Spicycassino is bringing the heat! I’m talking slots, table games, the works! It’s got everything you need for a good night in or a casual spin. And who knows? Maybe you’ll hit the jackpot! Give ’em a look at jackpot 777.

  3. certainly like your website however you have to take a look at the spelling on quite a few of your posts. Many of them are rife with spelling problems and I in finding it very bothersome to inform the reality on the other hand I?¦ll certainly come again again.

  4. That is really interesting, You are an overly skilled blogger. I have joined your rss feed and look forward to in the hunt for more of your magnificent post. Also, I have shared your web site in my social networks!

  5. Wonderful blog! Do you have any tips and hints for aspiring writers? I’m hoping to start my own website soon but I’m a little lost on everything. Would you propose starting with a free platform like WordPress or go for a paid option? There are so many choices out there that I’m completely confused .. Any ideas? Thanks a lot!

  6. For those seeking an exceptional online gaming experience, us.com](https://maxispin.us.com/) stands out as a premier destination. At Maxispin Casino, players can enjoy a vast array of pokies, table games, and other thrilling options, all accessible in both demo and real-money modes. The casino offers attractive bonuses, including free spins and a generous welcome offer, along with cashback promotions and engaging tournaments. To ensure a seamless experience, Maxispin provides various payment methods, efficient withdrawal processes, and reliable customer support through live chat. Security is a top priority, with robust safety measures and a strong focus on responsible gambling tools. Players can easily navigate the site, with detailed guides on account creation, verification, and payment methods. Whether you’re interested in high RTP slots, hold and win pokies, or the latest slot releases, Maxispin Casino delivers a user-friendly and secure platform. Explore their terms and conditions, read reviews, and discover why many consider Maxispin a legitimate and trustworthy choice in Australia.
    Both seasoned copywriters and beginners can find the resources they need on MaxiSpin.us.com to elevate their content.

    **Features of MaxiSpin.us.com**
    This makes it a go-to tool for global marketers and businesses.

    **Benefits of Using MaxiSpin.us.com**
    MaxiSpin.us.com provides businesses with a major advantage by simplifying the content creation process.

  7. Услуги по настройке https://sysadmin.guru и администрированию серверов и компьютеров. Установка систем, настройка сетей, обслуживание серверной инфраструктуры, защита данных и техническая поддержка. Помогаем обеспечить стабильную работу IT-систем.

  8. Curious about the weather wetter in Podgorica today. Detailed 7- and 10-day forecasts, including temperature, wind, precipitation, humidity, and pressure. Up-to-date information on the climate and weather conditions in Podgorica for travel and leisure.

  9. Если вам нравится стиль провайдера Hacksaw Gaming – резкие бонуски, высокая динамика и слоты, которые часто держат в напряжении до последнего спина – загляните в наш Telegram. Мы ведём канал именно про Hacksaw: публикуем подборки лучших тайтлов, разбираем фичи (покупка бонуса, модификаторы, этапы бонус-раундов), отмечаем, какие игры больше “на разнос”, а какие спокойнее по темпу, и делимся новинками, как только они появляются. Удобно, если хотите быть в теме и быстро выбирать, во что сыграть сегодня.

  10. Если вы ищете лучшие казино по отзывам игроков, смотрите не только на общий рейтинг, но и на повторяющиеся детали: как быстро выводят, какие платежки реально проходят, насколько вменяемая поддержка, и нет ли массовых жалоб на блокировки или резкие ограничения. Мы как раз отслеживаем такие моменты и публикуем свежие подборки и обновления в Telegram – чтобы можно было быстро понять, где сейчас стабильно и честно. Ссылка на канал: https://t.me/s/rating_casino_russia/23

  11. Качественное SEO https://outreachseo.ru продвижение сайта для бизнеса. Наши специалисты предлагают эффективные решения для роста позиций в поисковых системах. Подробнее об услугах и стратегиях можно узнать на сайте

  12. Любишь азарт? пин ап зеркало предлагает разнообразные игровые автоматы, настольные игры и интересные бонусные программы. Платформа создана для комфортной игры и предлагает широкий выбор развлечений.

  13. Старый паркет? шлифовка паркета цена за м2 профессиональное восстановление деревянного пола без пыли и лишних затрат. Удаляем царапины, потемнения и старое покрытие, возвращаем гладкость и естественный цвет. Используем современное оборудование, выполняем циклевку, шлифовку и лакировку паркета под ключ с гарантией качества и точным соблюдением сроков.

  14. Does your blog have a contact page? I’m having a tough time locating it but, I’d like to shoot you an e-mail. I’ve got some creative ideas for your blog you might be interested in hearing. Either way, great website and I look forward to seeing it improve over time.