-
Notifications
You must be signed in to change notification settings - Fork 164
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New System App Module for easy file systems access #663
Open
IceOnly
wants to merge
28
commits into
microsoft:main
Choose a base branch
from
IceOnly:module/filesystem
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from 22 commits
Commits
Show all changes
28 commits
Select commit
Hold shift + click to select a range
3d52a6a
Move to BCApps
IceOnly 62b73a7
Upgrade to BC24
IceOnly c0276ff
Add Interface changes
IceOnly 7945909
Fix Account Browser
IceOnly 692b8b7
Change application are to new logic
IceOnly 1277528
Fix first batch of code review suggestions
IceOnly ca7455a
Add File Pagination Facade
IceOnly ae719dd
Reduce code in file browser page
IceOnly 8d8eee9
Use only test lib for internal access
IceOnly 4258a0b
Fix variable names
IceOnly 30a0622
Add review suggestions
IceOnly 5b3228a
Solve name and id conflicts
IceOnly 0cfd765
Fix test
IceOnly 0327220
Fix application areas
IceOnly 0ec94d8
Remove unused label
IceOnly 6f742e4
Simplify integer incrementation
IceOnly 33afd83
Sort variables
IceOnly f701d9f
Add Init to AddEntry
IceOnly c3cd8b5
Change tooltip to code review suggestion
IceOnly a53d936
Solve code review comments
IceOnly e6bf344
Solve code review suggestions 2
IceOnly e077767
Use labels for telemetry
IceOnly f1c251a
Fix code review suggestions
IceOnly 73ed292
Remove useless internal attributes
IceOnly 017b7d0
Refactored to media only
IceOnly 4e5968e
Fix tooltips
IceOnly 5fd8fc8
Revert GetIsLegacyActionBarEnabled change
IceOnly ecf81b5
Renumber Test Lib
IceOnly File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
Provides an API that lets you connect file system accounts to Business Central so that people can access files outside BC. The file system module consists of the following main entities: | ||
|
||
### File Account | ||
An file account holds the information needed to access a file system from Business Central. | ||
|
||
... |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
{ | ||
"id": "c9c54414-80c3-4cc9-98c6-589158882774", | ||
"name": "File System", | ||
"publisher": "Microsoft", | ||
"brief": "Enables access to external file systems from Business Central.", | ||
"description": "Enables access to external file systems from Business Central.", | ||
"version": "25.0.0.0", | ||
"privacyStatement": "https://go.microsoft.com/fwlink/?linkid=724009", | ||
"EULA": "https://go.microsoft.com/fwlink/?linkid=2009120", | ||
"help": "https://go.microsoft.com/fwlink/?linkid=2103698", | ||
"url": "https://go.microsoft.com/fwlink/?linkid=724011", | ||
"logo": "", | ||
"dependencies": [ | ||
{ | ||
"id": "7e3b999e-1182-45d2-8b82-d5127ddba9b2", | ||
"name": "DotNet Aliases", | ||
"publisher": "Microsoft", | ||
"version": "25.0.0.0" | ||
}, | ||
{ | ||
"id": "872fe7e8-9893-40ae-ab94-c123ed30fdbd", | ||
"name": "Extension Management", | ||
"publisher": "Microsoft", | ||
"version": "25.0.0.0" | ||
}, | ||
{ | ||
"id": "de35f591-7216-4e60-8be1-1911d71a7fc2", | ||
"name": "Telemetry", | ||
"publisher": "Microsoft", | ||
"version": "25.0.0.0" | ||
}, | ||
{ | ||
"id": "0846d207-5dec-4c1b-afd8-6a25e1e14b9d", | ||
"name": "Base64 Convert", | ||
"publisher": "Microsoft", | ||
"version": "25.0.0.0" | ||
}, | ||
{ | ||
"id": "a4584a53-9345-458a-af20-d1df2fab7bd8", | ||
"name": "Confirm Management", | ||
"publisher": "Microsoft", | ||
"version": "25.0.0.0" | ||
}, | ||
{ | ||
"id": "e31ad830-3d46-472e-afeb-1d3d35247943", | ||
"name": "BLOB Storage", | ||
"publisher": "Microsoft", | ||
"version": "25.0.0.0" | ||
} | ||
], | ||
"internalsVisibleTo": [ | ||
{ | ||
"id": "f188754b-3ffb-443a-9507-f5fbdae3af2c", | ||
"name": "File System Test Library", | ||
"publisher": "Microsoft" | ||
} | ||
], | ||
"screenshots": [ | ||
|
||
], | ||
"platform": "24.0.0.0", | ||
"idRanges": [ | ||
{ | ||
"from": 9450, | ||
"to": 9459 | ||
} | ||
], | ||
"target": "OnPrem", | ||
"contextSensitiveHelpUrl": "https://go.microsoft.com/fwlink/?linkid=2134520" | ||
} |
22 changes: 22 additions & 0 deletions
22
src/System Application/App/File System/permissions/FileSystemAdmin.PermissionSet.al
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
// ------------------------------------------------------------------------------------------------ | ||
// Copyright (c) Microsoft Corporation. All rights reserved. | ||
// Licensed under the MIT License. See License.txt in the project root for license information. | ||
// ------------------------------------------------------------------------------------------------ | ||
|
||
namespace System.FileSystem; | ||
|
||
permissionset 9450 "File System - Admin" | ||
{ | ||
Access = Public; | ||
Assignable = true; | ||
Caption = 'File System - Admin'; | ||
|
||
IncludedPermissionSets = "File System - Edit"; | ||
|
||
Permissions = | ||
tabledata "File System Connector" = RIMD, | ||
tabledata "File System Connector Logo" = RIMD, | ||
tabledata "File Account Scenario" = RIMD, | ||
tabledata "File Scenario" = RIMD, | ||
tabledata "File Account Content" = RIMD; | ||
} |
20 changes: 20 additions & 0 deletions
20
src/System Application/App/File System/permissions/FileSystemEdit.PermissionSet.al
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
// ------------------------------------------------------------------------------------------------ | ||
// Copyright (c) Microsoft Corporation. All rights reserved. | ||
// Licensed under the MIT License. See License.txt in the project root for license information. | ||
// ------------------------------------------------------------------------------------------------ | ||
|
||
namespace System.FileSystem; | ||
|
||
using System.Environment; | ||
|
||
permissionset 9453 "File System - Edit" | ||
{ | ||
Access = Public; | ||
Assignable = false; | ||
Caption = 'File System - Edit'; | ||
|
||
IncludedPermissionSets = "File System - Read"; | ||
|
||
Permissions = tabledata "File System Connector Logo" = imd, | ||
tabledata "Tenant Media" = imd; | ||
} |
22 changes: 22 additions & 0 deletions
22
src/System Application/App/File System/permissions/FileSystemRead.PermissionSet.al
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
// ------------------------------------------------------------------------------------------------ | ||
// Copyright (c) Microsoft Corporation. All rights reserved. | ||
// Licensed under the MIT License. See License.txt in the project root for license information. | ||
// ------------------------------------------------------------------------------------------------ | ||
|
||
namespace System.FileSystem; | ||
|
||
using System.Environment; | ||
|
||
permissionset 9451 "File System - Read" | ||
{ | ||
Access = Internal; | ||
Assignable = false; | ||
|
||
Permissions = | ||
tabledata "File System Connector" = r, | ||
tabledata "File System Connector Logo" = r, | ||
tabledata "File Account Scenario" = r, | ||
tabledata "File Scenario" = r, | ||
tabledata "File Account Content" = r, | ||
tabledata Media = r; // File System Account Wizard requires this | ||
} |
48 changes: 48 additions & 0 deletions
48
src/System Application/App/File System/src/Account/FileAccount.Codeunit.al
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
// ------------------------------------------------------------------------------------------------ | ||
// Copyright (c) Microsoft Corporation. All rights reserved. | ||
// Licensed under the MIT License. See License.txt in the project root for license information. | ||
// ------------------------------------------------------------------------------------------------ | ||
|
||
namespace System.FileSystem; | ||
|
||
/// <summary> | ||
/// Provides functionality to work with file accounts. | ||
/// </summary> | ||
|
||
codeunit 9450 "File Account" | ||
{ | ||
Access = Public; | ||
InherentPermissions = X; | ||
InherentEntitlements = X; | ||
|
||
/// <summary> | ||
/// Gets all of the file accounts registered in Business Central. | ||
/// </summary> | ||
/// <param name="LoadLogos">Flag, used to determine whether to load the logos for the accounts.</param> | ||
/// <param name="TempFileAccount">Out parameter holding the file accounts.</param> | ||
procedure GetAllAccounts(LoadLogos: Boolean; var TempFileAccount: Record "File Account" temporary) | ||
begin | ||
FileAccountImpl.GetAllAccounts(LoadLogos, TempFileAccount); | ||
end; | ||
|
||
/// <summary> | ||
/// Gets all of the file accounts registered in Business Central. | ||
/// </summary> | ||
/// <param name="TempFileAccount">Out parameter holding the file accounts.</param> | ||
procedure GetAllAccounts(var TempFileAccount: Record "File Account" temporary) | ||
begin | ||
FileAccountImpl.GetAllAccounts(false, TempFileAccount); | ||
end; | ||
|
||
/// <summary> | ||
/// Checks if there is at least one file account registered in Business Central. | ||
/// </summary> | ||
/// <returns>True if there is any account registered in the system, otherwise - false.</returns> | ||
procedure IsAnyAccountRegistered(): Boolean | ||
begin | ||
exit(FileAccountImpl.IsAnyAccountRegistered()); | ||
end; | ||
|
||
var | ||
FileAccountImpl: Codeunit "File Account Impl."; | ||
} |
68 changes: 68 additions & 0 deletions
68
src/System Application/App/File System/src/Account/FileAccount.Table.al
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,68 @@ | ||
// ------------------------------------------------------------------------------------------------ | ||
// Copyright (c) Microsoft Corporation. All rights reserved. | ||
// Licensed under the MIT License. See License.txt in the project root for license information. | ||
// ------------------------------------------------------------------------------------------------ | ||
|
||
namespace System.FileSystem; | ||
|
||
/// <summary> | ||
/// A common representation of an file account. | ||
/// </summary> | ||
table 9450 "File Account" | ||
{ | ||
Extensible = false; | ||
TableType = Temporary; | ||
|
||
fields | ||
{ | ||
field(1; "Account Id"; Guid) | ||
{ | ||
DataClassification = SystemMetadata; | ||
} | ||
|
||
field(2; Name; Text[250]) | ||
{ | ||
DataClassification = SystemMetadata; // Field only in Memory | ||
} | ||
|
||
field(4; Connector; Enum "File System Connector") | ||
{ | ||
DataClassification = SystemMetadata; | ||
} | ||
|
||
field(5; Logo; Media) | ||
{ | ||
Access = Internal; | ||
DataClassification = SystemMetadata; | ||
} | ||
|
||
field(6; LogoBlob; Blob) | ||
{ | ||
Access = Internal; | ||
DataClassification = SystemMetadata; | ||
Subtype = Bitmap; | ||
} | ||
} | ||
|
||
keys | ||
{ | ||
key(PK; "Account Id", Connector) | ||
{ | ||
Clustered = true; | ||
} | ||
|
||
key(Name; Name) | ||
{ | ||
Description = 'Used for sorting'; | ||
} | ||
} | ||
|
||
fieldgroups | ||
{ | ||
fieldgroup(Brick; Logo, Name) | ||
{ | ||
|
||
} | ||
} | ||
|
||
} |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We cannot use Blobs of subtype bitmap anymore. We should use Media instead.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Solved.