microsoft / ALAppExtensions

Repository for collaboration on Microsoft AL application add-on and localization extensions for Microsoft Dynamics 365 Business Central.
MIT License
796 stars 622 forks source link

Table 2000000205 "Object Access Intent Override" is inaccessible because has Scope = OnPrem !! #23802

Closed JavierFuentes closed 9 months ago

JavierFuentes commented 1 year ago

We need to be able to automatically configure when deploying on SaaS our extensions some Pages, necessarily exposed as SOAP endpoints, with ReadOnly access to use the replica database, but inexplicably this table has OnPrem scope.

image

Can you change its accessibility or provide a public method to do this, please?

pri-kise commented 1 year ago

You should move to API Pages and ODataV4 instead of using SOAP. SOAP is deprecated by the way: https://learn.microsoft.com/en-us/dynamics365/business-central/dev-itpro/upgrade/deprecated-features-platform#soap-endpoints-warning

JavierFuentes commented 1 year ago

Hi @pri-kise , SOAP is a requirement of the external system that our extension integrates with.

On the other hand, Codeunits are not officially supported by OData/API at present, so you should think about this before answering.

You should know about Microsoft's Universal Code Initiative too...

https://cloudblogs.microsoft.com/dynamics365/it/2022/10/28/the-dynamics-365-business-central-universal-code-initiative-is-live/

New extensions must have "target": "Cloud" but there are many objects like this with inexplicably OnPrem scope.

pri-kise commented 1 year ago

@JavierFuentes we still provide some SOAP Endpoints for specific external systems, but we provided them in a mid-layer outside of business central. I know about the Universal Code Initative, that's the reason why I created several PRs for the system application and the base application to get this addressed by myself. (Your table is part of the SystemApp, that can't be changed by partners, if I checked it correctly.)

On the other hand, Codeunits are not officially supported by OData/API at present, so you should think about this before answering.

Could you go a little bit more in detail, what you mean by this sentence? In your orginial post you were talking about pages and not codeunits..

Unbound Functions are officially supported in codeunits: https://learn.microsoft.com/en-us/dynamics365/business-central/dev-itpro/developer/devenv-creating-and-interacting-with-odatav4-unbound-action

Besides all this, it still might be valid to remove the Acces Scope of this table or alternativly provide a wrapper codeunit in the Sytem Application for this specific requirement.

JavierFuentes commented 1 year ago

I'm glad you finally accepted my point of view.

Now we just need someone from Microsoft Team to understand it too.

JesperSchulz commented 9 months ago

This is a platform table. We're tracking all these requests through #24613 (the issue is closed, but a bug for the platform team has been created). I would also advise you to create a BC Idea (aka.ms/bcideas), as this repo only is for extensibility requests for Dynamics 365 Business Central or pull requests towards the 1st party Business Central apps. Our platform teams aren't monitoring this repo.