recupDonnees = (ds: DataSource, info: IMDataSourceInfo) => {
//Partie temporaire du stockage des options de la liste déroulante
let tmp = [];
//Si la datasource est chargée
if (info.status === DataSourceStatus.Loaded) {
//Parcours les résultats de la requête
this.queryDs.getRecords().map((r: any) => {
//Construit le label e foncton des champs choisis
let label = '';
if (this.props.useDataSources[0].fields?.length == 0 || !this.props.useDataSources[0].fields) {
label += r.getData()['objectid'];
} else {
for (let j = 0; j < this.props.useDataSources[0].fields.length; j++) {
if (j != 0) {
label += '-';
}
label += r.getData()[this.props.useDataSources[0].fields[0]];
}
}
//Ajoute la donnée dans le contenu de la liste déroulante
tmp.push({ label: label, value: r.getData()['objectid'] + label, info: r });
})
}
//définie par défaut les coordonnées du premier enregistrement
this.destinationChange(tmp[0]);
//Remplace le contenu de la liste déroulante
this.setState({ destinations: tmp });
return null;
}