[EBOOK] El futuro del transporte de carga en Colombia

Bookmark (0)
Please login to bookmark Close

[EBOOK]

Algunas claves del futuro del transporte de carga en Colombia

El sector del transporte de carga en Colombia está evolucionando rápidamente, gracias al uso de nuevas tecnologías, estrategias de eficiencia y medición de indicadores clave. Por esta razón, para mantenerte competitivo, es fundamental conocer las tendencias que marcarán el futuro de la industria.

En este ebook, no solo exploramos las tendencias clave, sino que también proporcionamos información valiosa para facilitar la toma de decisiones estratégicas en tu empresa. Así, podrás anticiparte a los cambios y mejorar tu competitividad en el mercado.

¿Qué esperas para enfrentar los cambios del sector?

 

” + “

” + detail + “

” +
“;
pc_confirmation.style.display = ‘block’;
var mp = document.querySelector(‘input[name=”mp”]’);
mp.value = ‘0’;
} else {
form.querySelector(‘._form-content’).style.display = ‘inline’;
pc_confirmation.style.display = ‘none’;
}

var hideButton = document.getElementById(‘hideButton’);
// Add event listener to the button
hideButton.addEventListener(‘click’, function() {
var submitButton = document.querySelector(‘#_form_217_submit’);
submitButton.disabled = false;
submitButton.classList.remove(‘processing’);
var mp = document.querySelector(‘input[name=”mp”]’);
mp.value = ‘1’;
const cacheBuster = new URL(window.location.href);
cacheBuster.searchParams.set(‘v’, new Date().getTime());
window.location.href = cacheBuster.toString();
});

const vgoAlias = typeof visitorGlobalObjectAlias === ‘undefined’ ? ‘vgo’ : visitorGlobalObjectAlias;
var visitorObject = window[vgoAlias];
if (email && typeof visitorObject !== ‘undefined’) {
visitorObject(‘setEmail’, email);
visitorObject(‘update’);
} else if (typeof(trackcmp_url) != ‘undefined’ && trackcmp_url) {
// Site tracking URL to use after inline form submission.
_load_script(trackcmp_url);
}
if (typeof window._form_callback !== ‘undefined’) window._form_callback(id);
};
window._load_script = function(url, callback, isSubmit) {
var head = document.querySelector(‘head’), script = document.createElement(‘script’), r = false;
var submitButton = document.querySelector(‘#_form_217_submit’);
script.charset = ‘utf-8’;
script.src = url;
if (callback) {
script.onload = script.onreadystatechange = function() {
if (!r && (!this.readyState || this.readyState == ‘complete’)) {
r = true;
callback();
}
};
}
script.onerror = function() {
if (isSubmit) {
if (script.src.length > 10000) {
_show_error(“217”, “Lo sentimos, ocurrió un error con el envío. Acorta tus respuestas y vuelve a intentarlo.”);
} else {
_show_error(“217”, “Lo sentimos, ocurrió un error con el envío. Vuelve a intentarlo.”);
}
submitButton.disabled = false;
submitButton.classList.remove(‘processing’);
}
}

head.appendChild(script);
};
(function() {
var iti;
if (window.location.search.search(“excludeform”) !== -1) return false;
var getCookie = function(name) {
var match = document.cookie.match(new RegExp(‘(^|; )’ + name + ‘=([^;]+)’));
return match ? match[2] : null;
}
var setCookie = function(name, value) {
var now = new Date();
var time = now.getTime();
var expireTime = time + 1000 * 60 * 60 * 24 * 365;
now.setTime(expireTime);
document.cookie = name + ‘=’ + value + ‘; expires=’ + now + ‘;path=/; Secure; SameSite=Lax;’;
}
var addEvent = function(element, event, func) {
if (element.addEventListener) {
element.addEventListener(event, func);
} else {
var oldFunc = element[‘on’ + event];
element[‘on’ + event] = function() {
oldFunc.apply(this, arguments);
func.apply(this, arguments);
};
}
}
var _removed = false;
var form_to_submit = document.getElementById(‘_form_217_’);
var allInputs = form_to_submit.querySelectorAll(‘input, select, textarea’), tooltips = [], submitted = false;

var getUrlParam = function(name) {
if (name.toLowerCase() !== ’email’) {
var params = new URLSearchParams(window.location.search);
return params.get(name) || false;
}
// email is a special case because a plus is valid in the email address
var qString = window.location.search;
if (!qString) {
return false;
}
var parameters = qString.substr(1).split(‘&’);
for (var i = 0; i < parameters.length; i++) {
var parameter = parameters[i].split(‘=’);
if (parameter[0].toLowerCase() === ’email’) {
return parameter[1] === undefined ? true : decodeURIComponent(parameter[1]);
}
}
return false;
};

var acctDateFormat = “%d/%m/%Y”;
var getNormalizedDate = function(date, acctFormat) {
var decodedDate = decodeURIComponent(date);
if (acctFormat && acctFormat.match(/(%d|%e).*%m/gi) !== null) {
return decodedDate.replace(/(d{2}).*(d{2}).*(d{4})/g, ‘$3-$2-$1’);
} else if (Date.parse(decodedDate)) {
var dateObj = new Date(decodedDate);
var year = dateObj.getFullYear();
var month = dateObj.getMonth() + 1;
var day = dateObj.getDate();
return `${year}-${month < 10 ? `0${month}` : month}-${day < 10 ? `0${day}` : day}`;
}
return false;
};

var getNormalizedTime = function(time) {
var hour, minutes;
var decodedTime = decodeURIComponent(time);
var timeParts = Array.from(decodedTime.matchAll(/(d{1,2}):(d{1,2})W*([AaPp][Mm])?/gm))[0];
if (timeParts[3]) { // 12 hour format
var isPM = timeParts[3].toLowerCase() === ‘pm’;
if (isPM) {
hour = parseInt(timeParts[1]) === 12 ? ’12’ : `${parseInt(timeParts[1]) + 12}`;
} else {
hour = parseInt(timeParts[1]) === 12 ? ‘0’ : timeParts[1];
}
} else { // 24 hour format
hour = timeParts[1];
}
var normalizedHour = parseInt(hour) < 10 ? `0${parseInt(hour)}` : hour;
var minutes = timeParts[2];
return `${normalizedHour}:${minutes}`;
};

for (var i = 0; i < allInputs.length; i++) {
var regexStr = “field\[(\d+)\]”;
var results = new RegExp(regexStr).exec(allInputs[i].name);
if (results != undefined) {
allInputs[i].dataset.name = allInputs[i].name.match(/[time]$/)
? `${window.cfields[results[1]]}_time`
: window.cfields[results[1]];
} else {
allInputs[i].dataset.name = allInputs[i].name;
}
var fieldVal = getUrlParam(allInputs[i].dataset.name);

if (fieldVal) {
if (allInputs[i].dataset.autofill === “false”) {
continue;
}
if (allInputs[i].type == “radio” || allInputs[i].type == “checkbox”) {
if (allInputs[i].value == fieldVal) {
allInputs[i].checked = true;
}
} else if (allInputs[i].type == “date”) {
allInputs[i].value = getNormalizedDate(fieldVal, acctDateFormat);
} else if (allInputs[i].type == “time”) {
allInputs[i].value = getNormalizedTime(fieldVal);
} else {
allInputs[i].value = fieldVal;
}
}
}

var remove_tooltips = function() {
for (var i = 0; i < tooltips.length; i++) {
tooltips[i].tip.parentNode.removeChild(tooltips[i].tip);
}
tooltips = [];
};
var remove_tooltip = function(elem) {
for (var i = 0; i < tooltips.length; i++) {
if (tooltips[i].elem === elem) {
tooltips[i].tip.parentNode.removeChild(tooltips[i].tip);
tooltips.splice(i, 1);
return;
}
}
};
var create_tooltip = function(elem, text) {
var tooltip = document.createElement(‘div’),
arrow = document.createElement(‘div’),
inner = document.createElement(‘div’), new_tooltip = {};
if (elem.type != ‘radio’ && (elem.type != ‘checkbox’ || elem.name === ‘sms_consent’)) {
tooltip.className = ‘_error’;
arrow.className = ‘_error-arrow’;
inner.className = ‘_error-inner’;
inner.innerHTML = text;
tooltip.appendChild(arrow);
tooltip.appendChild(inner);
elem.parentNode.appendChild(tooltip);
} else {
tooltip.className = ‘_error-inner _no_arrow’;
tooltip.innerHTML = text;
elem.parentNode.insertBefore(tooltip, elem);
new_tooltip.no_arrow = true;
}
new_tooltip.tip = tooltip;
new_tooltip.elem = elem;
tooltips.push(new_tooltip);
return new_tooltip;
};
var resize_tooltip = function(tooltip) {
var rect = tooltip.elem.getBoundingClientRect();
var doc = document.documentElement,
scrollPosition = rect.top – ((window.pageYOffset || doc.scrollTop) – (doc.clientTop || 0));
if (scrollPosition < 40) {
tooltip.tip.className = tooltip.tip.className.replace(/ ?(_above|_below) ?/g, ”) + ‘ _below’;
} else {
tooltip.tip.className = tooltip.tip.className.replace(/ ?(_above|_below) ?/g, ”) + ‘ _above’;
}
};
var resize_tooltips = function() {
if (_removed) return;
for (var i = 0; i < tooltips.length; i++) {
if (!tooltips[i].no_arrow) resize_tooltip(tooltips[i]);
}
};
var validate_field = function(elem, remove) {
var tooltip = null, value = elem.value, no_error = true;
remove ? remove_tooltip(elem) : false;
if (elem.type != ‘checkbox’) elem.className = elem.className.replace(/ ?_has_error ?/g, ”);
if (elem.getAttribute(‘required’) !== null) {
if (elem.type == ‘radio’ || (elem.type == ‘checkbox’ && /any/.test(elem.className))) {
var elems = form_to_submit.elements[elem.name];
if (!(elems instanceof NodeList || elems instanceof HTMLCollection) || elems.length <= 1) {
no_error = elem.checked;
}
else {
no_error = false;
for (var i = 0; i < elems.length; i++) {
if (elems[i].checked) no_error = true;
}
}
if (!no_error) {
tooltip = create_tooltip(elem, “Seleccione una opción.”);
}
} else if (elem.type ==’checkbox’) {
var elems = form_to_submit.elements[elem.name], found = false, err = [];
no_error = true;
for (var i = 0; i < elems.length; i++) {
if (elems[i].getAttribute(‘required’) === null) continue;
if (!found && elems[i] !== elem) return true;
found = true;
elems[i].className = elems[i].className.replace(/ ?_has_error ?/g, ”);
if (!elems[i].checked) {
no_error = false;
elems[i].className = elems[i].className + ‘ _has_error’;
err.push(“Es necesario verificar %s”.replace(“%s”, elems[i].value));
}
}
if (!no_error) {
tooltip = create_tooltip(elem, err.join(‘
‘));
}
} else if (elem.tagName == ‘SELECT’) {
var selected = true;
if (elem.multiple) {
selected = false;
for (var i = 0; i < elem.options.length; i++) {
if (elem.options[i].selected) {
selected = true;
break;
}
}
} else {
for (var i = 0; i < elem.options.length; i++) {
if (elem.options[i].selected
&& (!elem.options[i].value
|| (elem.options[i].value.match(/n/g)))
) {
selected = false;
}
}
}
if (!selected) {
elem.className = elem.className + ‘ _has_error’;
no_error = false;
tooltip = create_tooltip(elem, “Seleccione una opción.”);
}
} else if (value === undefined || value === null || value === ”) {
elem.className = elem.className + ‘ _has_error’;
no_error = false;
tooltip = create_tooltip(elem, “Este campo es obligatorio.”);
}
}
if (no_error && elem.name == ’email’) {
if (!value.match(/^[+_a-z0-9-‘&=]+(.[+_a-z0-9-‘]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,})$/i)) {
elem.className = elem.className + ‘ _has_error’;
no_error = false;
tooltip = create_tooltip(elem, “Introduzca una dirección de correo electrónico válida.”);
}
}
if (no_error && (elem.id == ‘phone’)) {
if (elem.value.trim() && typeof iti != ‘undefined’ && !iti.isValidNumber()) {
elem.className = elem.className + ‘ _has_error’;
no_error = false;
tooltip = create_tooltip(elem, “Enter a valid phone number.”);
}
}
if (no_error && /date_field/.test(elem.className)) {
if (!value.match(/^dddd-dd-dd$/)) {
elem.className = elem.className + ‘ _has_error’;
no_error = false;
tooltip = create_tooltip(elem, “Introduzca una fecha válida.”);
}
}

if (no_error && elem.name === ‘sms_consent’) {
const elemShouldBeChecked = (!!elem.attributes.required && !elem.checked);
if (elemShouldBeChecked) {
elem.className = elem.className + ‘ _has_error’;
no_error = false;
tooltip = create_tooltip(elem, “Marca esta casilla para continuar”);
} else {
elem.className = elem.className.replace(/ ?_has_error ?/g, ”);
}
}
tooltip ? resize_tooltip(tooltip) : false;
return no_error;
};
var needs_validate = function(el) {
if(el.getAttribute(‘required’) !== null){
return true;
}
if((el.name === ’email’ || el.id === ‘phone’) && el.value !== “”){
return true;
}

return false;
};
var validate_form = function(e) {
var err = form_to_submit.querySelector(‘._form_error’), no_error = true;
if (!submitted) {
submitted = true;
for (var i = 0, len = allInputs.length; i < len; i++) {
var input = allInputs[i];
if (needs_validate(input)) {
if (input.type == ‘text’ || input.type == ‘number’ || input.type == ‘time’ || input.type == ‘tel’) {
addEvent(input, ‘blur’, function() {
this.value = this.value.trim();
validate_field(this, true);
});
addEvent(input, ‘input’, function() {
validate_field(this, true);
});
} else if (input.type == ‘radio’ || input.type == ‘checkbox’) {
(function(el) {
function getElementsArray(name){
const value = form_to_submit.elements[name];
if (Array.isArray(value)){
return value;
}
return [value];
}
var radios = getElementsArray(el.name);
for (var i = 0; i < radios.length; i++) {
addEvent(radios[i], ‘change’, function() {
validate_field(el, true);
});
}
})(input);
} else if (input.tagName == ‘SELECT’) {
addEvent(input, ‘change’, function() {
validate_field(this, true);
});
} else if (input.type == ‘textarea’){
addEvent(input, ‘input’, function() {
validate_field(this, true);
});
}
}
}
}
remove_tooltips();
for (var i = 0, len = allInputs.length; i < len; i++) {
var elem = allInputs[i];
if (needs_validate(elem)) {
if (elem.tagName.toLowerCase() !== “select”) {
elem.value = elem.value.trim();
}
validate_field(elem) ? true : no_error = false;
}
}
if (!no_error && e) {
e.preventDefault();
}
resize_tooltips();
return no_error;
};
addEvent(window, ‘resize’, resize_tooltips);
addEvent(window, ‘scroll’, resize_tooltips);

window[‘recaptcha_callback’] = function() {
// Get all recaptchas in the DOM (there may be more than one form on the page).
var recaptchas = document.getElementsByClassName(“g-recaptcha”);
for (var i in recaptchas) {
// Set the recaptcha element ID, so the recaptcha can be applied to each element.
var recaptcha_id = “recaptcha_” + i;
recaptchas[i].id = recaptcha_id;
var el = document.getElementById(recaptcha_id);
if (el != null) {
var sitekey = el.getAttribute(“data-sitekey”);
var stoken = el.getAttribute(“data-stoken”);
grecaptcha.render(recaptcha_id, {“sitekey”:sitekey,”stoken”:stoken});
}
}
}; _load_script(“https://www.google.com/recaptcha/api.js?onload=recaptcha_callback&render=explicit”);
var _form_serialize = function(form){if(!form||form.nodeName!==”FORM”){return }var i,j,q=[];for(i=0;i {
if (key !== ‘hideButton’) {
formData.append(key, value);
}
});
let request = {
headers: {
“Accept”: “application/json”
},
body: formData,
method: “POST”
};

let pageUrlParams = new URLSearchParams(window.location.search);
if (pageUrlParams.has(‘t’)) {
request.headers.Authorization = ‘Bearer ‘ + pageUrlParams.get(‘t’);
}
const response = await fetch(‘https://zonalogistica2794.activehosted.com/proc.php?jsonp=true’, request);

return response.json();
}
if (formSupportsPost) {
submitForm().then((data) => {
eval(data.js);
}).catch(() => {
_show_error(“217”, “Lo sentimos, ocurrió un error con el envío. Vuelve a intentarlo.”);
});
} else {
_load_script(‘https://zonalogistica2794.activehosted.com/proc.php?’ + serialized + ‘&jsonp=true’, null, true);
}
}
return false;
};
addEvent(form_to_submit, ‘submit’, form_submit);
})();

¿Qué encontrarás en este


ebook?


✅Cómo la inteligencia artificial y la analítica están transformando la logística.
✅ Indicadores clave para decidir entre flota propia o tercerizada.

En definitiva, conocer estas tendencias te permitirá tomar decisiones más acertadas y optimizar los costos y la eficiencia en tu operación logística.

📥 Descárgalo gratis y prepárate para el futuro del transporte de carga en Colombia.

¿Quieres capacitarte en las


tendencias


del transporte de carga?

Participa en TransporMaster 2025: el evento clave para el transporte de carga en Colombia

Si quieres conocer más sobre el futuro del transporte  y conectar con expertos del sector, haz parte de TransporMaster 2025, el evento líder en transporte en Medellín.

  • Explora soluciones innovadoras que impulsan el crecimiento de tu negocio.
  • Asimismo, conéctate con líderes de la industria y genera alianzas estratégicas.
  • Y lo mejor de todo, accede a conferencias exclusivas y descubre nuevas oportunidades comerciales.

📅 Fecha: 8 de mayo de 2025
📍 Lugar: Medellín

¡Asegura tu cupo y lleva tu empresa al siguiente nivel!

​[EBOOK] Algunas claves del futuro del transporte de carga en Colombia El sector del transporte de carga en Colombia está evolucionando rápidamente, gracias al uso de nuevas tecnologías, estrategias de eficiencia y medición de indicadores clave. Por esta razón, para mantenerte competitivo, es fundamental conocer
La entrada [EBOOK] El futuro del transporte de carga en Colombia se publicó primero en Zonalogística. Read More