Skip to content

Instantly share code, notes, and snippets.

@jiju-MS
Created March 12, 2020 03:09
Show Gist options
  • Save jiju-MS/dd53e586ddac715ee791be98a41db1a4 to your computer and use it in GitHub Desktop.
Save jiju-MS/dd53e586ddac715ee791be98a41db1a4 to your computer and use it in GitHub Desktop.
/**
* CustomFunction Return Error
* @customfunction
* @param {number} errorCase
* @returns error
*/
function customErrorReturn(errorCase) {
switch (errorCase) {
case 1: {
var error = new CustomFunctions.Error(
CustomFunctions.ErrorCode.notAvailable, // #N/A
"An error *case 1* was detected in customErrorReturn"
);
return error;
}
case 2: {
var error = new CustomFunctions.Error(
CustomFunctions.ErrorCode.invalidValue, // #VALUE!
"An error *case 2* was detected in customErrorReturn"
);
return error;
}
case 3: {
var error = new CustomFunctions.Error(
CustomFunctions.ErrorCode.divisionByZero, // #DIV/0!
"This message should not appear in UI"
);
return error;
}
case 4: {
var error = new CustomFunctions.Error(
CustomFunctions.ErrorCode.invalidNumber, // #NUM!
"This message should not appear in UI"
);
return error;
}
case 5: {
var error = new CustomFunctions.Error(
CustomFunctions.ErrorCode.nullReference, // #NULL!
"This message should not appear in UI"
);
return error;
}
case 6: {
var error = new CustomFunctions.Error(
CustomFunctions.ErrorCode.notAvailable // #N/A!
);
return error;
}
case 7: {
var error = new CustomFunctions.Error(); // #VALUE!
return error;
}
case 8: {
var error = new CustomFunctions.Error(
undefined, // #VALUE!
"An error *case 8* was detected in customErrorReturn"
);
return error;
}
case 9: {
var error = new CustomFunctions.Error(
"Customized", // #VALUE!
"An error *case 9* was detected in customErrorReturn"
);
return error;
}
case 10: {
var error = new CustomFunctions.Error(new Error()); // #VALUE!
return error;
}
case 11: {
return new Error("This message should not appear in UI"); // #VALUE!
}
default: {
var error = new CustomFunctions.Error(
CustomFunctions.ErrorCode.notAvailable,
"An unknown error case was detected in customErrorReturn"
);
return error;
}
}
}
/**
* CustomFunction Return Error Array
* @customfunction
* @param {number} errorCase
* @returns {any[][]}
*/
function customErrorReturnArray(errorCase) {
switch (errorCase) {
case 1: {
var error = new CustomFunctions.Error(
CustomFunctions.ErrorCode.notAvailable, // #N/A
"An error *case 1* was detected in customErrorReturnArray "
);
return [["Hello"], [error]];
}
case 2: {
var error1 = new CustomFunctions.Error(
CustomFunctions.ErrorCode.notAvailable, // #N/A
"An error *case 1* was detected in customErrorReturnArray "
);
var error2 = new CustomFunctions.Error(
CustomFunctions.ErrorCode.invalidValue, // #VALUE!
"An error *case 2* was detected in customErrorReturnArray "
);
return [[error1], [error2]];
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment