# Global Event: OnGetUserPreferences

The OnGetUserPreferences Event is used to retrieve user preferences when entering the application and when editing/executing reports.

Signature

For custom code the args array is structured as follows:

args[] is contains one object, a string with the user preference’s id.

For .Net Assemblies the method signature is as follows:

string EventHandlerName(SessionInfo sessionInfo, string id)

Expected Return

Expects a string return value, which represents the user preference’s value.

Notes

The event will only be called if the ‘User Preference Storage Method’ is set to Server Events in the User Settings.

Example

The following example shows how the event can retrieve the user preference’s value from a database.

    //this code retrieves user preferences from a database. This assumes two things:
    // 1. A global variable exists called reportTableName which represents where the user preferencs are stored
    // 2. A method called ExecuteSQLCmd exists to execute sql statements

    string stmt = String.Format("Select upValue From {0} Where id = @id",  reportTableName);
    List<SqlParameter> sqlParams = new List<SqlParameter>();
    sqlParams.Add(new SqlParameter("@id", id));
    Object queryResult;
    queryResult = ExecuteSQLCmd(stmt, sqlParams);
    return queryResult == null ? null : queryResult.ToString();