Zum Inhalt

Settings.json

Die settings.json ist eine Konfigurationsdatei für Visual Studio Code, die steuert, wie die Entwicklungsumgebung und bestimmte AL-spezifische Funktionen arbeiten.

Namenskonventionen

Die Extension waldo's CRS AL Language Extension bietet folgende Möglichkeiten für die Benamung der Objekte:

Einstellung Erläuterung
"CRS.ObjectNameSuffix" Dies ist das Kürzel, das angehängt wird. Hier steht TSO.
"CRS.OnSaveAlFileAction" Gibt an, was beim Speichern passieren soll. [DoNothing, Rename, Reorganize]
"CRS.ExtensionObjectNamePattern" Gibt an, welcher Objektname einem Extension-Objekt beim Speichern gegeben werden soll.
"CRS.FileNamePattern[Extension/PageCustomization]" Gibt an, wie Dateinamen beim Speichern automatisch gesetzt werden.

alOutline Einstellungen

Diese Einstellungen konfigurieren Befehle, welche aus der Extension AZ AL Dev Tools/AL Code Outline kommen.

settings.json
"CRS.AlSubFolderName": "None", // Unterbindet Reorganize  
"CRS.ExtensionObjectNamePattern": "<BaseNameShort><Suffix>",  
"CRS.FileNamePattern": "<ObjectNameShort>.<ObjectTypeShortPascalCase>.al",  
"CRS.FileNamePatternExtensions": "<ObjectNameShort>.<ObjectTypeShortPascalCase>.al",  
"CRS.FileNamePatternPageCustomizations": "<ObjectNameShort>.<ObjectTypeShortPascalCase>.al",  
"CRS.ObjectNameSuffix": "TSO",  
"CRS.OnSaveAlFileAction": "Rename", // Automatisches Rename bei speichern  
"CRS.RemoveSuffixFromFilename": true,
"al.enableCodeAnalysis": true,  
"al.codeAnalyzers": [  
    "${CodeCop}",  
    "${UICop}",
    "${PerTenantExtensionCop}",
    "${analyzerFolder}BusinessCentral.LinterCop.dll" // Optional
],
"alOutline.codeActionsOnSave": [
    "SortProperties",
    "SortVariables",
    "SortPermissions",
    "SortPermissionSetList",
    "FormatDocument"
],
"alOutline.codeCleanupActions": [
    "AddApplicationAreas",
    "AddTableFieldCaptions",
    "AddObjectCaptions",
    "FixKeywordsCase",
    "ConvertObjectIdsToNames",
    "AddMissingParentheses",
    "SortPermissionSetList",
    "SortProperties",
    "SortTableFields",
    "SortVariables",
    "FormatDocument",
    "TrimTrailingWhitespace"
],
"alOutline.variablesSortMode": "mainTypeNameOnly",
"editor.formatOnSave": true,
"files.exclude": {
    "**/.alcache": true,
    "**/.altemplates": true,
    "**/rad.json": true
},
"files.trimTrailingWhitespace": true,
"linterCop.autoDownload": true, // Nur relevant wenn der LinterCop verwendet wird
"search.exclude": {
    "**/.alcache": true,
    "**/.altemplates": true,
    "**/rad.json": true
}
settings.json
"CRS.AlSubFolderName": "None", // Unterbindet Reorganize  
"CRS.ExtensionObjectNamePattern": "<BaseNameShort><Suffix>",  
"CRS.FileNamePattern": "<ObjectNameShort>.<ObjectTypeShortPascalCase>.al",  
"CRS.FileNamePatternExtensions": "<ObjectNameShort>.<ObjectTypeShortPascalCase>.al",  
"CRS.FileNamePatternPageCustomizations": "<ObjectNameShort>.<ObjectTypeShortPascalCase>.al",  
"CRS.ObjectNameSuffix": "TSO",  
"CRS.OnSaveAlFileAction": "Rename", // Automatisches Rename bei speichern  
"CRS.RemoveSuffixFromFilename": true,
"al.enableCodeAnalysis": true,  
"al.codeAnalyzers": [  
    "${CodeCop}",  
    "${UICop}",
    "${AppSourceCop}",
    "${analyzerFolder}BusinessCentral.LinterCop.dll" // Optional
],
"alOutline.codeActionsOnSave": [
    "SortProperties",
    "SortVariables",
    "SortPermissions",
    "SortPermissionSetList",
    "FormatDocument"
],
"alOutline.codeCleanupActions": [
    "AddApplicationAreas",
    "AddTableFieldCaptions",
    "AddObjectCaptions",
    "FixKeywordsCase",
    "ConvertObjectIdsToNames",
    "AddMissingParentheses",
    "SortPermissionSetList",
    "SortProperties",
    "SortTableFields",
    "SortVariables",
    "FormatDocument",
    "TrimTrailingWhitespace"
],
"alOutline.variablesSortMode": "mainTypeNameOnly",
"editor.formatOnSave": true,
"files.exclude": {
    "**/.alcache": true,
    "**/.altemplates": true,
    "**/rad.json": true
},
"files.trimTrailingWhitespace": true,
"linterCop.autoDownload": true, // Nur relevant wenn der LinterCop verwendet wird
"search.exclude": {
    "**/.alcache": true,
    "**/.altemplates": true,
    "**/rad.json": true
}