Вопрос

Як з фронтенду отримати список усіх полів об'єкту?

Підкажіть, буль ласка, як з фронтенду отримати список усіх полів об'єкту?

Це необхідно для того, щоб передбачити що хтось змінив назви полів адо додав поля... Дякую

Нравится

5 комментариев

Добрий день,

 

Прошу трохи уточнити питання: треба відслідковувати саме зміну заголовків колонок/додавання нових полів на сторінку чи зміну значеннь в колонках?

Добрий день. 

Треба отримати список усіх полів об'єкту Контакти, а саме контакти у клієнтьскому модулі участі не приймають...

Добрий день. 

Треба отримати список усіх полів об'єкту Контакти, з їх локалізованими назвами полів,  тому що 

Ext.create("Terrasoft.EntitySchemaQuery", {

       rootSchemaName: "Contacts"

}) 

потребує вказати які саме поля треба отримати.



Як отримати всі поля я вже зрозумів: просто треба .addColumn("*"), додати зірочку. Залишилось питання з локалізованими назвами полів.

 

З .addColumn("*")  погарячкував, це у мене з кешу сторінка прочиталася.

Залишається питання як отримати всі поля з локалізацієй

 

Демчук,

Всім дякую, придумав рішення. Може воно здасться дивним, але вибираємо поле з локалізацією 'en-US', JOIN поле з потрібною локалізацією, у всіх локалізованих значеннях з таблиці

SysLocalizableValue з відбором по ключу що починаються на "Columns.Contact". Там далі вже справа техніки...

 

Демчук,

 

тільки хотів запропонувати:) Було два варіанти: тягнути через fetch GET запит контент /0/conf/content/resources/en-US/назва схеми.js і парсити його (підхід не дуже хороший) або написати виклик сервісу з UI і викликати вибірку з SysLocalizableValue. Оскільки ми вдвох паралельно прийшли до цього, то - так, скористуйтесь підходом з SysLocalizableValue.

Показать все комментарии