Developer Tools DevTools Public v2

Good afternoon, colleagues!

We are pleased to announce the release of the second public version of the developer tools: DevTools Public v2. These tools make development on the SimpleOne platform more convenient and secure.

To start using the tools, please follow these steps:

  1. Download the .sop file: [DevTools] Public v2.sop (67.2 KB)
  2. Import the file into your instance.

DevTools were developed by the SimpleOne Business Solutions team as an auxiliary tool.
Although this package is not a standalone product and does not come with official support, we warmly welcome your suggestions and feedback in the comments below this post :pray:

DevTools Functionality:

  1. Export/Export of Local Packs
  • Added validation during export to detect inactive configuration versions within the package (JSON Copy contains “active”: false AND Is current is Yes). If inactive records are found, the user receives a warning with a link to those records.

The following actions have been added to the burger menu DevTools tab on the Local Pack form:

  • Check current records button — verifies that no inactive versions exist within the package.
  • Translations button — displays all translations contained in the package.
  • Application for views button — checks that sys_ui_list and sys_ui_form from the package are not created for tables belonging to another application.
  • Remove insert and delete versions button — cleans the package of versions associated with records created and subsequently deleted within the current package.
  • Clear the pack button — removes from the local package all versions of records that were created and then deleted within the package.
  • Translations for the table button — displays all translations for columns of the current table.
  1. Import/Load of Retrieved Packs

The following actions have been added to the burger menu DevTools tab on the imported package form:

  • Application and policy button — validates the application and policy of records in the loaded package.
  • Application for views button — checks that sys_ui_list and sys_ui_form from the package are not created for tables belonging to another application.
  • Translations button — displays all translations from the package. Checks for: dangling or double spaces in translations, Cyrillic characters in English translations, and presence of a second translation record for another language.
  • Choice options button — displays all sys_choice/sys_re_choice options in the package. Added a “Choice” column header to the results table to facilitate checking option declensions.
  • Source Messages button — validates source_message values for correctness. Checks for: dangling or double spaces in message text, Cyrillic characters in English messages, and correct application prefix in messages.
  • Messages button — validates translations for source_message entries.
  • Event Registers button — checks for usage of system event registry in scripts (by registry name) and in workflow blocks/notification rules (by registry ID).
  • Images using button — finds images not referenced in any other configuration records.
  • Cyrillic at JSON Copy button — checks for Cyrillic characters in JSON Copy versions.
  • Marketplace overlaps with OOB button — checks for ID overlaps between the marketplace package and out-of-the-box versions (requires prior installation of all business application OOB versions on the instance).
  • Marketplace VENDOR_ID button — validates VENDOR_ID values for marketplace package versions.
  • Compare packs button — checks for Subtask records in the overall package history/defect.
  • Compare with VCS Records button — compares versions in the imported package with current versions on the instance.
  • Translations for the table button — displays all translations for columns of the current table.

Added to the VCS Preview Log list:

  • Good button — changes the status of sys_vcs_preview_log from “Collision” to “Normal”. Can be applied to selected records; if no records are selected, the status changes for all records linked to the package.

Added to the Retrieved Packs list:

  • Compare button — compares two loaded packages (outputs only differing records + count of records).

Added visualization widgets:

  • JSON Beautifier widget — formats JSON code with line numbering and allows script selection via Ctrl+A. A “Copy Script” button is available on every code element. Table names, column names, and widget names are added to JSON Beautifier.
  • JSON Comparer widget — provides comparison functionality (buttons: Compare with current and Compare).
  • Added DevTools category in the agent interface navigator with the item Architecture Visualization, which leads to a page with a widget visualizing relationships between tables.
  • Added visualization of version content (viewing JSON Copy version as a record form). Accessible via the burger menu of sys_vcs_preview_log record: DevTools → Show Form.
  • Added visualization of sys_ui_list version (viewing list settings). Accessible via the burger menu of sys_vcs_preview_log record: DevTools → Show List Layout.
  • Added visualization of sys_ui_form version (viewing form settings). Accessible via the burger menu of sys_vcs_preview_log record: DevTools → Show Form Layout.
22 Likes

Thank you for the update!

From what we noticed during testing:

  1. When navigating to "Technical Release Builder" ( /record/sys_ui_action/171716114817104543 ), a 404 error occurs; likely the "technical_release" page and everything related to it are missing from the package.
  2. The "Clear Package" button ( /record/sys_ui_action/172241113110599925 ) appears only if the ‘vendor’ role is present, but this role is missing from the package.
1 Like

Alexander, thank you for your feedback! :pray:
We have made the corrections based on your comments :flexed_biceps:

A separate like for the Beautifier item.

But here, the phrase “the DevTools category in the agent interface navigator with the Architecture Visualization option” needs a detailed explanation.
Currently, when clicking the “Build…” button in the test environment, I received the error: “:32: TypeError: Simple\Api\Infrastructure\Manager\SimpleSystemManager::getProperty(): Return value must be of type ?string, array returned in /app/src/Modules/Api/Infrastructure/Manager/SimpleSystemManager.php:176”

Hello,

Where can I find more detailed information on how to set the VENDOR_ID value in my package that I plan to publish on the marketplace in the future?
Also, am I correct in understanding that if the package was obtained from the marketplace, the Marketplace overlaps with OOB option will help check for conflicts with out-of-the-box entries before uploading the package?
Thank you in advance.

2 Likes