Skip to main content
Skip table of contents

Enterprise Reporting (APEX)

Right-To-Left (RTL) support will be managed through the SIS database and the APEX upgrade process.

This procedure must be completed for both 100 and 200 PowerSchool Enterprise Reporting.

Apex reports are designed to display content according to the language settings of the browser.

To enable RTL, complete the steps:

Set APEX Globalization settings

  1. In the App Builder, click PowerSchool Enterprise Reporting (100) or (200).

  2. Click Edit Application Properties.

  3. Navigate to the Globalization tab and select Browser (use browser language preference) in Application Language Derived From column.

  4. Change the primary language to Arabic.

  5. Click Apply Changes.

App builder

Adding Global page

  1. Navigate to Application 100 or 200 start page

  2. Click Create Page.

  3. Select Global Page.

  4. Click Next and Submit.

  5. Open the Global Page and create a Dynamic Action for the event - Page Load.

    apex_page_load-20250717-085046.PNG
  6. Expand the newly created Dynamic Action, and navigate to the True section.

  7. Select Show.

  8. Navigate to Identification section.

  9. Select Execute JavaScript Code for Action.

  10. Add the code to the Code section:

    1. JS
      //for initial table formatting
      document.querySelectorAll("td").forEach((cell) => {
         cell.setAttribute("dir", "auto"); // Set the dir attribute to "auto"
      });
      
      //for formatting table after table data is refreshed
      $(document).on("apexafterrefresh", function (event, data) {
        document.querySelectorAll("td").forEach((cell) => {
           cell.setAttribute("dir", "auto"); // Set the dir attribute to "auto"
        });
      });
      
      const targetNode = document.querySelector('.a-IRR-sortWidget-rows');
      const config = { childList: true, subtree: true };
      
      const callback = function(mutationsList) {
          mutationsList.forEach(mutation => {
              if (mutation.type === 'childList') {
                  $(mutation.target).find('a').each(function() {
                      $(this).attr('dir', 'auto'); // Add dir="auto"
                  });
              }
          });
      };
      
      const observer = new MutationObserver(callback);
      if (targetNode) {
          observer.observe(targetNode, config);
      }

Import themes

  1. In App Builder, click Import

  2. Select the f100_theme_102 file.

  3. Select Theme Export as the file type.

  4. Set the File Character to Unicode UTF-8

  5. Click Next.

  6. Select the 100 PowerSchool Enterprise Reporting Application.

  7. Click Install Theme.

Switch Theme

  1. Navigate to Shared Components.

  2. In the User Interface section, click Themes.

image-20241112-105129.png
  1. Click Switch Theme.

  2. Select the Themes and click Next.

image-20241112-104513.png

Follow the same procedure for f200_theme and 200 to import theme.

  1. Navigate to Application 200 - YTD Absences By Grade.

  2. In the Items list, select P9_YEAR from the Items list, and deselect the Start New Row in the layout section.

    image-20241202-085539.png
  3. To modify Student Attendance Summary section, select the element from left navigation panel and deselect the Start New Row from the layout section.

  4. Navigate to Application 200 - Student Grades V2.0

  5. In the Layout section, select P23200_SPACER and deselect Start New Row.

    apex_row-20250714-092012.PNG
  6. For both Application 200 - YTD Absences By Grade and Application 200 - Student Grades V2.0,

  7. In the Shared Components, navigate to User Interface Attributes in Shared Components.

  8. In the Logo section select Image and Text.

  9. In the Image URL enter the value - /i/powerschool-icon.svg and Text - PowerSchool SIS.

image-20241202-093613.png

Create language entries and apply XML Localization Interchange File Format translation

Define the language that requires RTL support ad apply the file for the selected language.

Create Language Entries

  1. In the App Builder, click PowerSchool Enterprise Reporting 100 or 200.

image-20241111-071107.png
  1. Click Shared Components.

  2. In the Globalization, click Translate Application.

image-20241111-123924.png
  1. Click Define Application Language.

image-20241111-124046.png
  1. Create RTL Language, like Arabic(ar), Spanish(es), Thai(th) by clicking on Create button.

image-20241111-124127.png
  1. Once languages are created we need to seed them with existing texts. For that, navigate to Shared Components. Then click Translate Application under Globalization section. Click Seed translatable text, select all the created languages and click Seed button.

  2. Apply XLIFF Transalation Files

  3. Download APEX Translations.zip and extract it.

  4. Each Language folder contains 2 files i.e. f100_* & f200_* . f100 refers to 100 Application where f200 refers to 200

  5. Navigate to Shared Components. Then click Translate Application under Globalization section.

  6. Click Apply XLIFF translation files

image-20241111-124046.png
  1. Upload 3 individual files from each language folder one by one and click upload

  2. Apply to translation based on the language

  3. Click Apply Checked

  4. Click Publish

  5. Select the language using checkbox and click Publish button

apex_translation_seed-20250714-091836.PNG

Apply Dynamic Translation

Enable Translations in Your APEX App

Navigation: Shared Components, Globalization, Translate Application.

  1. Navigate to your APEX Application. For example, App ID 100.

  2. Click Create Language.

  3. Select Arabic (ar) as the language.

  4. Select Dynamic Translation as translation mapping.

  5. Click Create.

Create String Translation in APEX UI

Navigation: Shared Components, Globalization, Dynamic Translations.

  1. Click Create.

  2. Select Arabic (ar) as the language.

  3. Select the From Text and To Text. For example, from English Submit to Arabic إرسال.

  4. Click Create.

Follow the same steps for all translation instances.

After making the necessary changes, you can execute any APEX report according to the language selected in the globalization settings.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.