Copy the text in the code-window below to an empty notepad document.
Save the file to your PrintShop Mail installed directory, "Macro" folder, with the extension .js
Start (or restart) PrintShop Mail.
How to use:
Create a variable.
Use the expression builder to attach the RANDOMNUM(number) function to the variable. A number between 0 and the entered number will be returned.
Combine with INT(number) function to get integer numbers: INT(RANDOMNUM(number))
Limitations:
THIS INFORMATION IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES. USE AT YOUR OWN RISK. MACROS are NOT SUPPORTED in ANY way.
code:
// **************************************************************************************************** // // Random Number Generator Macro module for PrintShop Mail // // Language : JScript // Author : Floris Dansen - Objectif Lune BV // // *** This macro is provided as is, it will not be supported, and no rights can be claimed *** // *** Use at your own risk *** // // ****************************************************************************************************
// CALLBACK FOR FUNCTION DESCRIPTORS // ==================================================================================================== function psmGetFunctionDescriptor(index) { if (index == 0) return "NUMBER NUMBER+VOLATILE RANDOMNUM(NUMBER{number;Maximum of returned number.})\tGenerates a random number with the specified maximum.\t
RANDOMNUM(500) => 348";
return ""; };
// **************************************************************************************************** // **************************************************************************************************** // // EXPRESSION FUNCTIONS IMPLEMENTATIONS // // Same name as 'KEYWORD' given in the descriptor, prefixed with 'psm' // the 'psm' prefix is to prevent possible clash with the module's language keywords. // // **************************************************************************************************** // **************************************************************************************************** function psmRANDOMNUM(innum) { return Math.random() * innum; }
// **************************************************************************************************** // // The functions below are sample implementations for the optional functions. // (Note that this sample uses all optional functions to demonstratie there purpose and usage) // // ****************************************************************************************************
// CALLBACK FOR WARNING RETRIEVAL // ==================================================================================================== var Warning=""; function psmGetWarning() { // This function is optional, only required if one or more functions need to issue warnings // It is called each time after a plugin expression from this module is called. // If no warnings should be given, an empty string should be returned. var result = Warning; Warning = ""; return result; }
// CALLBACK FOR WARNING CAUSE PARAMETER NO. // ==================================================================================================== var causeParameterNo = -1; function psmGetWarningCauseParameter() { var result = causeParameterNo; causeParameterNo = -1; return result; }
// CALLBACK FOR SETTING LANGUAGE // ==================================================================================================== var LanguageSet = ""; function psmSetLanguage(lan) { LanguageSet = lan; }