Calculadora de ROI

Calculadora de ROI

Calcule su ROI potencial con Aleran. Comience respondiendo las breves preguntas a continuación y vea con qué rapidez y significancia podría ver resultados: desde mayores ventas, menores costos y un retorno de la inversión.
¿Qué porcentaje de su volumen total de ventas anuales se realiza en línea, a través del comercio electrónico? Porcentaje de ventas anuales de comercio electrónico
%
La cantidad de personal que forma parte de su proceso de venta a sus clientes: ingresar y revisar cotizaciones y pedidos, responder consultas de los clientes, etc. Número de personas que gestionan y procesan pedidos de venta
personas
Valor aproximado de las ventas generales de la empresa en la moneda seleccionada. Esta información es importante para correlacionar el impacto general. Ingresos por ventas actuales
Esta información se utiliza para personalizar sus resultados según su región. Su región central
ROI con Aleran
___ _ USD
tu primer año
Aumento de ventas
___ _ USD
tu primer año
Ahorro de costes
___ _ USD
tu primer año
ROI positivo
__ mes. o menos
Comparado con el proceso manual

Su informe está casi listo

Simplemente agregue algunos detalles más y estará listo para descargarlo

Nombre
Apellido
Email
"); printWindow.document.close(); printWindow.focus(); printWindow.print(); } const populateTemplate = (template, data) => { if (template.nodeType === 3 && template.nodeValue.includes('\{{')) { if (new RegExp('{{PositiveMonthsROI}}').test(template.nodeValue)) { if (data['PositiveMonthsROI'].split(' ')[0] < 6) { template.parentNode.parentNode.classList.add('green'); } else { template.parentNode.parentNode.classList.add('pink'); } } if (new RegExp('{{eCommerceSales}}').test(template.nodeValue)) { let width = (data['eCommerceSales'] / 100) * 50; template.parentElement.parentElement.querySelector('.bar').style = "width: " + width + 'px;'; } template.nodeValue = template.nodeValue.replace(/{{\s*([^}]+)\s*}}/g, (match, key) => data[key] || match); } else if (template.nodeType === 1) { for (const childNode of template.childNodes) { populateTemplate(childNode, data); } } ; return template; } const pushHistory = (data) => { if (data) { updateHistory(data); return; } const calculatedData = { HQRegion: hqRegion, eCommerceSales: eCommerceSalesPercentage, processorsValue: processorsValue, increasedSales: formatCalculatedNumber(increasedSalesCalculated, currency), ROI: formatCalculatedNumber(ROICalculated, currency), costSavings: formatCalculatedNumber(costSavingCalculated, currency), PositiveMonthsROI: ROIMonths, }; updateHistory([calculatedData]); updateHistoryData(calculatedData); } const resetInputs = () => { document.getElementById("eCommerce-sales").value = ""; document.getElementById("processors").value = ""; document.getElementById("sales-revenue").value = ""; document.getElementById("currency").selectedIndex = 0; document.getElementById("hq-region").selectedIndex = 0; document.getElementById("user-firstname").value = ""; document.getElementById("user-lastname").value = ""; document.getElementById("user-email").value = ""; document.getElementById("download-report").disabled = true; } const setDownloadButtonState = (isDisabled) => { const setButtonState = (button) => button.disabled = isDisabled; setButtonState(document.getElementById("download-report-first")); setButtonState(document.getElementById("download-report-second")); }; const setElementDisplayState = (elementId, isVisible) => { let element = document.getElementById(elementId); if (element) { element.style.display = isVisible ? "block" : "none"; } } const saveHistory = (name, value) => { localStorage.setItem(name, encodeURIComponent(JSON.stringify(value))) } const submitGravityForm = () => { var fieldsArray = { 5: "Email", 6: "First Name", 7: "eCommerce Sales", 8: "Processors", 9: "Current Sales Revenue", 11: "HQ Region", 12: "Last Name" } var formData = { "input_5": document.getElementById("user-email").value, "input_6": document.getElementById("user-firstname").value, "input_7": eCommerceSalesPercentage, "input_8": processorsValue, "input_9": salesRevenueValue, "input_11": hqRegion, "input_12": document.getElementById("user-lastname").value, }; $.ajax({ type: "POST", url: API_ENDPOINT, data: formData, success: function (response) { if (response.is_valid === true) { downloadAggregatedReport ? downloadPDF(false, 'l') : downloadPDF(true, 'p'); setElementDisplayState("overlay", false); } }, error: function (error) { var response = Object.entries(error.responseJSON.validation_messages)[0]; displayErrorMessage(fieldsArray[response[0]] + ": " + response[1]); return false; }, }); } const updateHistory = (data) => { const historyArticle = document.getElementById('history'); const historyTable = document.getElementById('history-table'); data.forEach((obj) => { const rowCount = historyTable.querySelectorAll('.table-row.data').length; if (rowCount >= 5) { historyTable.removeChild(historyTable.childNodes[3]);//Removes the row historyTable.removeChild(historyTable.childNodes[3]);//Removes the spacer } if (rowCount > 0) { createTemplateInstance('row-separator', 'history-table'); } createTemplateInstance('table-row', 'history-table', true, obj); }); if (historyTable.querySelectorAll('.table-row.data').length > 0) { historyArticle.style = 'display: flex;'; } } const updateHistoryData = (calculatedData) => { var historyTableContent = getHistoryData(cookieName); if (historyTableContent.length > historyTableMaxElements) { historyTableContent.splice(0, 1); } historyTableContent.push(calculatedData); saveHistory(cookieName, historyTableContent); } const validateUserNameEmailInputs = () => { var isEmailFilled = false; var isNameFilled = false; var userEmail = document.getElementById("user-email").value; var userFirstName = document.getElementById("user-firstname").value; var userLastName = document.getElementById("user-lastname").value; const emailReg = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9-]+\.{1}[a-zA-Z]{2,}$/; if ((userEmail.trim().length > 0) && (emailReg.test(userEmail))) { isEmailFilled = true; } else { displayErrorMessage("Por favor proporcione un email válido"); } if ((userFirstName.trim().length >= 3) && (userLastName.trim().length >= 3)) { isNameFilled = true; } else { displayErrorMessage("Por favor complete su nombre"); } if (isEmailFilled && isNameFilled) { displayErrorMessage(""); return true; } } const setDownloadAggregatedReport = (value) => { downloadAggregatedReport = value; }; document .getElementById("eCommerce-sales") .addEventListener("input", function (input) { if (input.currentTarget.value < 0) input.currentTarget.value = 0; if (input.currentTarget.value > 100) input.currentTarget.value = 100; }); document .getElementById("processors") .addEventListener("input", function (input) { if (input.currentTarget.value < 0) input.currentTarget.value = 0; }); document .getElementById("sales-revenue") .addEventListener("input", function (input) { if (input.currentTarget.value < 0) input.currentTarget.value = 0; if (parseFloat(input.currentTarget.value.replace(/,/g, "")) >= 1e12) { input.currentTarget.value = 1e12; } const separator = ","; const reg = new RegExp(`^-?\\d*[${separator}${"."}]?(\\d{0,3}${separator})*(\\d{3}${separator})?\\d{0,3}$`); const key = input.data || this.value.substr(-1); if (reg.test(key)) { input.target.value = numberSeparator(input.target.value); } else { input.target.value = input.target.value.substring( 0, input.target.value.length - 1 ); input.preventDefault(); return false; } }); document .getElementById("sales-revenue") .addEventListener("input", function (input) { if (input.currentTarget.value < 0) input.currentTarget.value = 0; if (parseFloat(input.currentTarget.value.replace(/,/g, "")) >= 1e12) { input.currentTarget.value = 1e12; } const separator = ","; const reg = new RegExp(`^-?\\d*[${separator}${"."}]?(\\d{0,3}${separator})*(\\d{3}${separator})?\\d{0,3}$`); const key = input.data || this.value.substr(-1); if (reg.test(key)) { input.target.value = numberSeparator(input.target.value); } else { input.target.value = input.target.value.substring( 0, input.target.value.length - 1 ); input.preventDefault(); return false; } }); window.addEventListener('load', loadHistoryTableFromCookie); return { Calculate: () => { getInputs(); calculate(); if (checkInputsValidity()) { pushHistory(); } displayValues(); setDownloadButtonState(false); }, Reset: () => { displayValues(true); resetInputs(); setDownloadButtonState(true); }, Download: () => { if (validateUserNameEmailInputs()) { submitGravityForm(); } }, Print: () => { openPrintWindow(); }, OpenPopUp: (aggregatedReport = false) => { setElementDisplayState("overlay", true); setDownloadAggregatedReport(aggregatedReport); }, Cancel: () => { setElementDisplayState("overlay", false); } }; })();

Get our Epicor Insights presentation on the power of AI

X