API/CodeSamples/DataSourceAliases.md
... ...
@@ -0,0 +1,60 @@
1
+#DataSourceAliases
2
+
3
+[[_TOC_]]
4
+
5
+##About
6
+
7
+Gets or sets the data source names(aliases) that the user sees in the Report Designer. This can be set globally or on a per-user basis. The key is the name of your column in the database and the value is the alias you wish the user to see. This is useful for localization and when custom fields are used in your application.
8
+
9
+Below is a sample displaying syntax in the global.asax file.
10
+
11
+##Global.asax (C♯)
12
+
13
+```csharp
14
+//main class: inherits DatabaseAdHocConfig or FileSystemAdHocConfig
15
+public class CustomAdHocConfig : Izenda.AdHoc.DatabaseAdHocConfig
16
+{
17
+ // Configure settings
18
+ // Add custom settings after setting the license key and connection string by overriding the ConfigureSettings() method
19
+ public static void InitializeReporting() {
20
+ //Check to see if we've already initialized.
21
+ if (HttpContext.Current.Session == null || HttpContext.Current.Session["ReportingInitialized"] != null)
22
+ return;
23
+ AdHocSettings.LicenseKey = "INSERT_LICENSE_KEY_HERE";
24
+ //Creates a connection to Microsoft SQL Server
25
+ AdHocSettings.SqlServerConnectionString = "INSERT_CONNECTION_STRING_HERE";
26
+ Izenda.AdHoc.AdHocSettings.AdHocConfig = new CustomAdHocConfig();
27
+ AdHocSettings.DataSourceAliases["tblOrders"] = "Order Details"; //The relevant setting
28
+ HttpContext.Current.Session["ReportingInitialized"] = true;
29
+ }
30
+}
31
+```
32
+
33
+##Global.asax (VB.NET)
34
+
35
+```visualbasic
36
+'main class: inherits DatabaseAdHocConfig or FileSystemAdHocConfig
37
+Public Class CustomAdHocConfig
38
+ Inherits Izenda.AdHoc.DatabaseAdHocConfig
39
+
40
+ Shared Sub InitializeReporting()
41
+ 'Check to see if we've already initialized
42
+ If HttpContext.Current.Session Is Nothing OrElse HttpContext.Current.Session("ReportingInitialized") IsNot Nothing Then
43
+ Return
44
+ 'Initialize System
45
+ AdHocSettings.LicenseKey = "INSERT_LICENSE_KEY_HERE"
46
+ AdHocSettings.SqlServerConnectionString = "INSERT_CONNECTION_STRING_HERE"
47
+ Izenda.AdHoc.AdHocSettings.AdHocConfig = New CustomAdHocConfig()
48
+ AdHocSettings.DataSourceAliases("tblOrders") = "Order Details" 'The relevant setting
49
+ HttpContext.Current.Session("ReportingInitialized") = True
50
+ End Sub
51
+End Class
52
+```
53
+
54
+##Fully-qualified data source names
55
+
56
+You can use fully-qualified data source names to allow columns from different tables and schemas with the same name to be aliased differently if you so desire. To do that, simply use bracket notation to specify the schema and table:
57
+
58
+```csharp
59
+AdHocSettings.FieldAliases.Add("[dbo].[tblOrders]", "Orders Details")
60
+```
... ...
\ No newline at end of file