Hi, I’m trying to do some calculations and to return a MxObject afterward. I’m not that experienced in javascript but I’ve come up with some code but my object seems to be empty. Anyone who could help? export async function GetGeoFencee(name, description, afstand, latitude, longitude) { // BEGIN USER CODE const promise = createObject(name); let meter = 0.0000089; let coef = afstand * meter; //Calculating 4 points //point 1 let lat1 = latitude + coef; let long1 = longitude + coef / Math.cos(latitude * 0.018); //point 2 let lat2 = latitude + coef; let long2 = longitude - coef / Math.cos(latitude * 0.018); //point 3 let lat3= latitude - coef; let long3 =longitude + coef / Math.cos(latitude * 0.018); //point 4 let lat4 = latitude - coef; let long4 = longitude - coef / Math.cos(latitude * 0.018); //Stringbuilder let arraystring = `((${lat1},${long1}),(${lat2},${long2}),(${lat4},${long4}),(${lat3},${long3}))` //CreateObject function createObject(name) { return new Promise((resolve, reject) => { mx.data.create({ entity: "MyFirstModule.GeoFence", callback: function(mxObject) { mxObject.set("Name", name); resolve(mxObject); console.warn(mxObject); }, error: function(e) { reject("Could not create object:" + error.message); } }); }); } // END USER CODE
asked
vincent coutuer
1 answers
6
export async function GetGeoFencee(name, description, afstand, latitude, longitude) {
// BEGIN USER CODE
const geoFence = await createObject(name);
// do the thing with coordinates or whatever e.g.
// geoFence.setAttribute("ArrayStriing",arraystring);
return geoFence;
// END USER CODE
}
The problem is that you are missing a return statement :)