Label Localization

Using Skuid SFX, it’s possible to create custom labels within the pages you create. Custom labels can be implemented in Apex classes, Visualforce pages, and Lightning components.

For the purposes of this documentation, we will focus on using custom labels and translations with Skuid. For specific information about custom labels, supported languages, and translation in Salesforce, check out their documentation on:

Translating Skuid’s labels

Skuid ships with several label translations as part of its managed package, and it’s possible to expand on Skuid’s existing languages—or add your own—for labels in its user interface. See the Skuid label reference for a list of labels available to translate.

In Salesforce setup:

  1. Navigate to Custom Labels.

  2. Find the label you wish to translate in the list, and click the Name link.

    Note

    Clicking Edit navigates to a different screen. Be sure to click the label name instead.

  3. Click New Local Translations / Overrides.

  4. Select the proper language and enter the translation int he Translation text field.

  5. Click Save.

Skuid label reference [[]]

The following labels are contained within Skuid’s managed package to represent its user interface. Translations for these labels can be added via the process described above.

Note

  • This reference only contains the name and short description. Label values can be found in Salesforce’s Custom Labels screen.
  • These labels may vary slightly depending on the Skuid version installed in your org.
Name Short Description
Action Action
Actions Actions
Add_A_New Add a New
Add_All_Visible_Objects Add All Visible Objects
Add_Drilldown Add Drilldown
Add_New Add New
Add_This Add This
After_This After This
All_a_Rows_Loaded_For_b All records loaded for specific model
All_records_exported_to_CSV All records exported to CSV
All_Rows All rows
All_Time All Time
All_Values All Values
All_X All_X
Allow_external_emails Allow external emails
AM_PM_Markers AM PM Markers
Any_X Any_X
Apply Apply
Applying_Filter Applying Filter
applying_sort_order_change Applying sort order change
Approvals_Invalid_Action_Type Invalid action type for Approval Process
Approvals_Invalid_Approver_Id The user Id is not valid for Next Approver
Approvals_Invalid_Org_Type Your Salesforce org does not support Approvals
Approvals_Invalid_Record_Id Invalid record Id
Approvals_Invalid_WorkItem_Id Invalid Work Item Id
Approvals_Lock_Unlock_Insufficient_Access Insufficient access to run the Lock/Unlock actions
Approvals_Not_Authorized_Approver You are not an authorized Approver
Approvals_Not_Authorized_Recaller You are not authorized to perform a recall
Approvals_Record_Id_Not_Found You need to provide a valid record Id for this action
Approvals_Specified_Approver_Required To proceed to the next step, you must specify the Next Approver
Approvals_WorkItem_Not_Found Work Item Id not found
Assign_using_active_assignment_rule Assign using active assignment rule
Batches_Processed Batches Processed
Before_This Before This
Boolean_Off Boolean - Off
Boolean_On Boolean - On
Building_Page Building Page
Calendar_Loading_Additional_Events Loading additional events…
Calendar_Loading_Additional_Events_Complete Events loaded.
Cancel Cancel
Cancelled Cancelled
Cannot_Find_Object_Question Cannot Find Object Question
Check_All Check All
Clear_Value Clear Value
Click_Here_to_Return_to_Where_You_Started Click Here to Return to Where You Started
Click_To_Go_To_Object_Tab Click To Go To {0} Tab
Clone Clone
Column Column
Components Components
Confirm_Delete Confirm Delete
Connected Connected to a Network
Created_By Created By
Currently_Offline Currently Offline
Custom_Action Custom Action
DataSource Data Source
Date_Completed Date Completed
Date_Submitted Date Submitted
Datepicker_CloseText Datepicker_CloseText
Datepicker_CurrentText Datepicker_CurrentText
Datepicker_NextText Datepicker_NextText
Datepicker_PrevText Datepicker_PrevText
Datepicker_WeekHeader Datepicker_WeekHeader
Day_Names_Long Day Names Long
Day_Names_Min Day Names Min
Day_Names_Short Day Names Short
Day_Scheduling_View Day Scheduling View
Delete Delete
Deleting Deleting
Done Done
Download_Sample_File Download Sample File
Edit_In_DSS Edit in DSS
Edit_Page Edit Page
Edit_Row Edit Row
Edit_Rows_Action Edit Rows Action
End_Date End Date
Enter_keywords Enter keywords
Error Error
ERROR_All_Columns_Must_Be_Mapped_Before_Import ERROR_All_Columns_Must_Be_Mapped_Before_Import
ERROR_At_Least_One_Import_Job_Required ERROR_At_Least_One_Import_Job_Required
ERROR_Class_not_value_provider ERROR_Class_not_value_provider
ERROR_Content_Type_Not_Supported ERROR_Content_Type_Not_Supported
ERROR_Could_Not_Find_Skuid_Page ERROR_Could_Not_Find_Skuid_Page
ERROR_Could_Not_Find_Skuid_Page_Assignment ERROR_Could_Not_Find_Skuid_Page_Assignment
Error_Could_Not_Find_Upload_Method Error Could Not Find Upload Method
ERROR_Could_Not_Process_Page_Include_Merge ERROR_Could_Not_Process_Page_Include_Merge
ERROR_Could_Not_Retrieve_File_From_URL ERROR_Could_Not_Retrieve_File_From_URL
ERROR_DML_Operation_On_Model_X_Failed_Due_To_Error ERROR_DML_Operation_On_Model_X_Failed_Due_To_Error
ERROR_Duplicate_Value_for_Unique_Field ERROR Duplicate Value for Unique Field
ERROR_Empty_Column_Header_Found ERROR_Empty_Column_Header_Found
ERROR_Empty_File ERROR_Empty_File
Error_Exceeds_Max_File_Size File exceeds the allowable size.
ERROR_File_Contains_Invalid_Characters ERROR_File_Contains_Invalid_Characters
ERROR_File_Has_No_Columns ERROR_File_Has_No_Columns
ERROR_File_Only_Has_Header_Row ERROR_File_Only_Has_Header_Row
ERROR_Import_Process_Required ERROR_Import_Process_Required
ERROR_Insufficient_Privileges_To_Create_Field ERROR_Insufficient_Privileges_To_Create_Field
ERROR_Insufficient_Privileges_To_Delete_Record ERROR_Insufficient_Privileges_To_Delete_Record
ERROR_Insufficient_Privileges_To_Insert_Record ERROR_Insufficient_Privileges_To_Insert_Record
ERROR_Insufficient_Privileges_To_Update_Field ERROR_Insufficient_Privileges_To_Update_Field
ERROR_Insufficient_Privileges_To_Update_Record ERROR_Insufficient_Privileges_To_Update_Record
ERROR_Invalid_Api_Version ERROR_Invalid_Api_Version
ERROR_Invalid_Batch_Job_Id ERROR_Invalid_Batch_Job_Id
ERROR_Invalid_Field_Mappings_Still_Exist ERROR_Invalid_Field_Mappings_Still_Exist
Error_Invalid_File_Upload_Data_Source Error Invalid File Upload Data Source
ERROR_Invalid_SObject_No_Metadata_Retrieved ERROR_Invalid_SObject_No_Metadata_Retrieved
ERROR_Invalid_SObject_Type ERROR_Invalid_SObject_Type
ERROR_Invalid_SObjectType_For_Model ERROR_Invalid_SObjectType_For_Model
ERROR_Missing_Field_on_Field_from_Another_Model_Condition Missing Field on Field from Another Model Condition
ERROR_No_Fields_Selected_For_Model_Query ERROR_No_Fields_Selected_For_Model_Query
ERROR_No_Permission_To_Author_Arbitrary_JavaScript ERROR_No_Permission_To_Author_Arbitrary_JavaScript
ERROR_Page_Name_Conflict Page Name Conflict
ERROR_Page_or_Tab_Required ERROR_Page_Name_or_Id_Required
ERROR_Page_Version_Conflict Page Revision Conflict
ERROR_Page_with_Id_Could_Not_Be_Retrieved ERROR_Page_with_Id_Could_Not_Be_Retrieved
Error_Performing_Requested_Search Error Performing Requested Search
ERROR_Protected_Module ERROR_Protected_Module
ERROR_Unable_To_Redirect_To_Standard_Pages ERROR_Unable_To_Redirect_To_Standard_Pages
ERROR_Unknown_merge_value_provider ERROR_Unknown_merge_value_provider
ERROR_User_Not_Licensed User Not Licensed
ERROR_V1_In_Lightning v1 pages are not supported in Lightning
ERROR_Valid_DataTable_Required ERROR_Valid_DataTable_Required
Error_While_Loading_Visualforce_Page_Include Error_While_Loading_Visualforce_Page_Include
Example_Of_What_File_Should_Look_Like Example_Of_What_File_Should_Look_Like
Expand_Collapse Expand/Collapse
Export_Data Export Data
Field Field
Field_X_Does_Not_Exist_On_Object Field_X_Does_Not_Exist_On_Object
Fields Fields
File_Column_Header File Column Header
File_Resource File Resource
Filter Filter
Filter_could_not_be_applied Filter could not be applied
First First
Flag_for_Delete_Action Flag for Delete Action
Flag_For_Deletion Flag For Deletion
Global_Feedback_Attach_Button_Text Global Feedback Attach Button Text
Global_Feedback_Breadcrumb_Step_1 Global Feedback Breadcrumb Step 1
Global_Feedback_Breadcrumb_Step_2 Global Feedback Breadcrumb Step 2
Global_Feedback_Close_Button_Text Global Feedback Close Button Text
Global_Feedback_File_Button_Text Global Feedback File Button Text
Global_Feedback_File_Help_Text Global Feedback File Help Text
Global_Feedback_Question_Text Global Feedback Question Text
Global_Feedback_Submit_Button_Text Global Feedback Submit Button Text
Global_Feedback_Success_Emphasized_Message Global Feedback Success Emphasized Message
Global_Feedback_Success_Secondary_Message Global Feedback Success Secondary Message
Global_Feedback_Tab_Icon Global Feedback Tab Icon
Global_Feedback_Tab_Text Global Feedback Tab Text
Global_Feedback_Type_Text Global Feedback Type Text
Greater_Than Greather Than
Home Home
How_to_Format_Your_File How to Format Your File
Import Import
Import_Complete Import Complete
Import_Email_On_The_Way Import Email On The Way
Import_In_Progress Import In Progress
Import_Processing_In_Background Import Processing In Background
ImportWizard_OnceFinishedWithEditsSelectSaveAs ImportWizard_OnceFinishedWithEditsSelectSaveAs
ImportWizardStep1ReturnWarning ImportWizardStep1ReturnWarning
Invalid_Data_Source Error Invalid Data Source
Invalid_Data_Source_Type Error Invalid Data Source Type
Invalid_Field_Format Invalid Field Client Side Validation
Invalid_Field_Formula_Snippet Invalid Field Client Side Validation
Invalid_Field_On_Object_Requested_by_Model Invalid Field On Object Requested by Model
Invalid_Field_on_Object_Requested_by_Model_Condition Invalid Field on Object Requested by Model Condition
Invalid_Number_Format Invalid Number Format
Item_Selected {0} item selected
Items_Selected {0} items selected
Job_Details Job Details
Last Last
Last_Modified_By Last Modified By
Less_Than Less Than
List_View List View
Load_More Load more
Loading Loading
Loading_Calendar_Events Loading Calendar Events
Map_Column_Headers_To_Fields Map Column Headers To Fields
Mapping_Status Mapping Status
Mass_Update_Selected_Rows Mass Update Selected Rows
Model_Id_Not_Provided Model_Id_Not_Provided
Models Models
Module Module
Month_Names_Long Month Names Long
Month_Names_Short Month Names Short
Month_View Month View
MyCredentials My Credentials
New_Event New Event
Next Next
No No
No_But_I_Would_Like_To_Delete No but I would like to Delete
No_Dont_Delete_Anything No Dont Delete Anything
No_Module No Module
No_Objects_to_Display No Objects to Display
No_Page_Name_Provided_For_Visualforce_Page_Include No Page Name Provided For Visualforce Page Include
None_Option_Text None_Option_Text
None_Selected None Selected
Number_of_Items_Successfully_Created Number of Items Successfully Created
Number_of_Items_That_Failed Number of Items That Failed
Number_Selected Number Selected
Object_X_Does_Not_Exist Object_X_Does_Not_Exist
Objects_Per_Page Objects Per Page
Organization_Default Organization Default
Owner Owner
Page_Deprecated Visualforce Page Deprecated
Page_Error_Header Page_Error_Header
Page_Regions Page Regions
Pagination_Limit_Reached Pagination Limit Reached
Password Password
pb_No_component_renderer No component renderer
pb_No_properties_renderer No properties renderer
Picture_View Picture View
Please_Check_Requested_Model_Merge_Field Please_Check_Requested_Model_Merge_Field
Please_Check_Requested_URL_Parameter Please Check Requested URL Parameter
Preview Preview
Previous Previous
Profile_Object_Label Profile Object Label
Properties Properties
Reconnecting Reconnecting to the Network
Records_Successfully_Created Records Successfully Created
Records_Successfully_Created_Or_Updated Records_Successfully_Created_Or_Updated
Records_That_Failed Records That Failed
Redo Redo
Remove Remove
Remove_this_Column Remove this Column
Required For indicating that a form field is required
Required_Fields_have_no_Value Required fields have no value:
Resources Resources
Result Result
Results Results
Retrieving_data_for_export Retrieving data for export
Retrieving_records_a_to_b Retrieving records a to b
Row_Selected Row Selected
Rows rows
Rows_Selected Rows Selected
Save Save
Save_Anyway Save anyway
Saved Saved
Saving Saving
Saving_Offline_Changes Saving your offline changes…
Search Search
Searching Searching
Select Select
Select_A_File Select A File
Select_Cards Select Cards
Select_Event_Type_to_Create Select Event Type to Create
Select_Option_None Select Option None
Send_Anyways Send Anyways
Send_notification_email Send notification email
Send_notification_email_to Send notification email to
server_model_client_condition server_client_cond
Share Share
Show Show
Showing_Rows Showing Rows
Skoodat_Batch_Processing Skuid Batch Processing
Skuid_Page_Problems Skuid Page Problems
Skuid_Page_Problems_No_Click Skuid Page Problems No Click
Specific_Record_Type Specific Record Type
Start Start
Start_Date Start Date
Status_of_Import_Operation Status of Import Operation
Submitted_By Submitted By
summary_avg Summary Function (AVG)
summary_max Summary Function (MAX)
summary_med Summary Function (MED)
summary_min Summary Function (MIN)
summary_sum Summary Function (SUM)
Synced Synced
Syncing Syncing
Table_Settings Table Settings
To_See_Imported_Records To_See_Imported_Records
Toggle_Edit_Mode_on_Selected_Rows Toggle Edit Mode on Selected Rows
Toggle_Selected_Rows_for_Deletion Flag Selected Rows for Deletion
Total_Items_Requested_For_Import Total Items Requested For Import
Uncheck_All Uncheck All
Undo Undo
Unsaved_Changes_Warning Unsaved Changes Warning
Unsupported_Page_Include_Merge_Type Unsupported_Page_Include_Merge_Type
Upload Upload
Upload_Successful Upload Successful
Uploading Uploading
Username Username
Validate_date Validate date
Validate_email Validate email
Validate_field_length_multiple Validate field length multiple
Validate_field_length_single Validate field length single
Validate_formula_snippet Validate formula or snippet
Validate_Mappings Validate Mappings
Validate_Mappings_Tooltip Validate Mappings Tooltip
Validate_SSN Validate Social Security number
Validate_URL Validate URL
View View
View_More View More
Viewing_a_b_of_c Viewing {0}-{1} of {2}
Visible Visible
Week_View Week View
Welcome_To_Skuid Welcome to Skuid
Wizard_Step_Title Wizard_Step_Title
Yes Yes

Troubleshooting

If label overrides don’t appear at runtime, users may need to clear their browser’s site data.

For example, in Chrome:

  1. Click View > Developer > Developer Tools.
  2. Click Application.
  3. Click Clear site data.

In Firefox:

  1. Click the lock icon in the address bar.
  2. Click Clear cookies and site data…
  3. Click Remove.

Displaying custom labels in Skuid

To display custom labels in Skuid:

  1. Click the Skuid Page container within the canvas to access Page Properties within the Properties pane.

  2. Click the Labels tab.

  3. Click add Add Label.

  4. Click the newly created label.

    • For Label Id, enter the name of the label you wish to include in your page.
  5. Click Save.

Repeat these steps for every label you want to use on this page.

Reference the label with merge syntax

Once you have created references to your labels in the Skuid page, you can reference them in any field in that page that accepts merge syntax using the $Label global merge variable. This includes Page Title, fields, etc.

For example, if you want to include a custom label “label_test” in a Page Title, you would reference the label using {{$Label.label_test}}.

Displaying other translations

Using Salesforce’s Translation Workbench and the $Label merge variable, you can automatically translate your custom labels into your end users’ native languages. This is especially useful if your organization has multiple locations across the globe. Just ensure you are using $Label on all buttons.

If labels have an appropriate translation, users will see that translation based on their personal language setting.

Note

If you are setting a specific button action, such as like Save or Cancel, these labels will defer to the default Salesforce label as long as no other label is inserted. This means you don’t need to include the $Label merge variable.

Additional translations in Skuid pages

The Translation Workbench can be used to display items beyond just labels and notes. However, these labels require double curly brackets to reflect translations for the user. This is because triple curly brackets tell Skuid to display only the raw (unformatted) data regardless of locale-specific settings.

Note

Using the field picker may automatically insert a field using triple curly brackets, which won’t display locale-specific info. (This means the translation won’t display.) Remember to check—and correct for—double curly brackets when using the field picker.

For example, you would like the values of a picklist—such as the Stage field on the Opportunity object—to be translated. If you want to use the Stage field in a filter set, set the Option Label Template to {{stageName}}, not {{{stageName}}}. (Triple brackets won’t translate the value.)

Troubleshooting

Having trouble with custom labels and translations? Make sure that:

  • you have specified your labels in the Labels tab.
  • your labels aren’t marked as protected components. Edit the custom label to unmark this property.