- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-15-2024 07:45 AM
Preciso exibir no meu HTML uma select de Gerentes com as opções dos dados da tabela como o nome deles. Porem, esta dando erro na consulta e exibição.
(function () {
/* populate the 'data' object */
/* e.g., data.table = $sp.getValue('table'); */
if (input) {
if (input.hasOwnProperty("getAllChoicesFromField")) {
data.choices = getAllChoicesFromField();
data.company = getAllCoreCompany();
data.suppliers = getAllSuppliers();
data.gerentes = getMembersGerentes();
}
}
function createObjectGlideRecord(table, query) {
const records = new GlideRecord(table);
records.addEncodedQuery(query);
records.query();
return records;
}
function getMembersGerentes() {
const id = [];
const gr = new GlideRecord('sys_user_grmember');
gr.addQuery("group", "0787786e1b0eacd0b1d9eb9fe54bcb94");
gr.query();
while (gr.next()) {
console.log()
id.push({
value: gr.sys_id.toString(),
label: gr.name.toString(),
});
}
return id
}
CLIENT_SCRIPT
api.controller = function ($scope) {
/* widget controller */
var c = this;
const action = c.server;
$scope.onload = function () {
action
.get({
getAllChoicesFromField: true,
})
.then((res) => {
$scope.gerentes = res.data.gerentes;
console.log(res.data.gerentes);
});
};
};
HTML
<select class="select-text" required>
<option value="" disabled selected></option>
<option ng-repeat="item in user" value="{{item.value}}">{{item.label}} </option>
</select>
<label class="select-label">Gerente </label>
Solved! Go to Solution.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-17-2024 06:06 AM - edited 03-17-2024 06:06 AM
Olá @guifeitosasilva ,
Complementando minha resposta anterior, gostaria de esclarecer um ponto importante sobre a tabela sys_user_grmember, que é utilizada como uma tabela de associação (bridge table) entre usuários e grupos. Para acessar o sys_id e o nome do usuário a partir dessa tabela, é necessário utilizar a técnica de dot walking. Isso significa que você pode acessar as propriedades do registro de usuário relacionado diretamente na sua consulta.
Aqui está uma forma de fazer isso corretamente na sua função getMembersGerentes:
function getMembersGerentes() {
var id = [];
var gr = new GlideRecord('sys_user_grmember');
gr.addQuery("group", "0787786e1b0eacd0b1d9eb9fe54bcb94");
gr.query();
while (gr.next()) {
id.push({
value: gr.user.sys_id.toString(), // Dot-walking para obter o sys_id do usuário
label: gr.user.name.toString(), // Dot-walking para obter o nome do usuário
});
}
return id;
}
Espero que isso ajude a esclarecer o processo. Por favor, me avise se tiver mais dúvidas ou precisar de mais assistência.
Cumprimentos, Ivan

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-17-2024 05:52 AM
Ola @guifeitosasilva ,
Você poderia especificar qual erro está encontrando? Se possível, você poderia compartilhar uma captura de tela ou descrever a mensagem de erro que está recebendo? Isso ajudaria a diagnosticar o problema com mais precisão.
Cumprimentos, Ivan

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-17-2024 06:06 AM - edited 03-17-2024 06:06 AM
Olá @guifeitosasilva ,
Complementando minha resposta anterior, gostaria de esclarecer um ponto importante sobre a tabela sys_user_grmember, que é utilizada como uma tabela de associação (bridge table) entre usuários e grupos. Para acessar o sys_id e o nome do usuário a partir dessa tabela, é necessário utilizar a técnica de dot walking. Isso significa que você pode acessar as propriedades do registro de usuário relacionado diretamente na sua consulta.
Aqui está uma forma de fazer isso corretamente na sua função getMembersGerentes:
function getMembersGerentes() {
var id = [];
var gr = new GlideRecord('sys_user_grmember');
gr.addQuery("group", "0787786e1b0eacd0b1d9eb9fe54bcb94");
gr.query();
while (gr.next()) {
id.push({
value: gr.user.sys_id.toString(), // Dot-walking para obter o sys_id do usuário
label: gr.user.name.toString(), // Dot-walking para obter o nome do usuário
});
}
return id;
}
Espero que isso ajude a esclarecer o processo. Por favor, me avise se tiver mais dúvidas ou precisar de mais assistência.
Cumprimentos, Ivan