;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Logo Pagbenk Seu dinheiro rende mais
Topo

'Racha' entre lojas de shopping cria grupo dissidente

Márcia De Chiara

São Paulo

01/04/2019 12h55

A fraca recuperação das vendas do varejo e os custos crescentes de ocupação das lojas trouxeram à tona uma antiga divisão entre pequenos e grandes varejistas de shopping centers, na negociação com os donos dos empreendimentos. O racha foi formalizado 20 dias atrás, com a criação da Associação Brasileira de Lojas Satélites (Ablos). A entidade reúne lojas menores, com cerca de 180 metros quadrados de área de vendas.

Elas são conhecidas como lojas satélites, em contraposição aos grandes magazines, ou âncoras. Por terem potencial para atrair grande quantidade de pessoas aos shoppings, as âncoras sempre desembolsaram proporcionalmente menos pela locação dos espaços, em relação às lojas menores.

"Até então existia uma associação que se chama Alshop (Associação Brasileira de Lojistas de Shopping) que diz representar os lojistas. Mas, na verdade, mais representa os shoppings", afirma Tito Bessa Júnior, presidente da Ablos e da rede TNG, de vestuário.

A nova associação nasce reunindo 70 marcas, como Jogê Meias (moda íntima), Side Walk (calçados), Gregory. MOB, Khelf (moda), Óticas Carol e Vivara (joias). A expectativa é que a adesão dos lojista à nova entidade cresça e atinja cerca de 300 marcas, o equivalente a 20 mil pontos de venda espalhados pelo país.

Nabil Sahyoun, presidente da Alshop, nega a falta de representatividade. Ele diz ter interlocução com o ministro da Economia, Paulo Guedes, e que esteve três vezes como presidente da República, Jair Bolsonaro.

Sua principal credencial, segundo ele, são os 40 mil pontos de vendas filiados à entidade, que existe há 24 anos. Quanto às negociações com os empreendedores de shoppings, Sahyoun diz que a postura é de parceria. Na crise, ele afirma que os shoppings foram flexíveis, prorrogaram prazos e deram descontos na locação.

Diferenças

A nova associação pensa diferente. Uma das demandas da Ablos é buscar uma relação mais equilibrada nas negociações entre as satélites e os donos de shoppings, normalmente grandes companhias. Pelo fato de serem empresas menores, elas não têm o mesmo poder de fogo das âncoras.

Hoje, diz Bessa, enquanto as âncoras pagam de 3% e 5% sobre o faturamento aos shoppings, as satélites desembolsam o equivalente entre 10% e 12%, podendo chegar a 20%. Ele afirma que o custo de ocupação das lojas satélites envolve aluguel, condomínio e fundo de promoção. Mas, no caso das âncoras, elas pagam apenas o aluguel.

Para o consultor especializado em shoppings, Luiz Alberto Marinho, sócio-diretor da GS&Malls, se o custo de ocupação de uma loja for maior do que 10% do que a sua receita de vendas, a operação tende a não ser lucrativa. "Se ar de 15% é proibitiva. Nenhum lojista satélite deveria pagar mais do que 15% do que vende com custo total de ocupação."

Bessa compara a relação desigual entre as lojas âncoras e satélites nos shoppings a um prédio de apartamentos no qual quem mora na cobertura (loja âncora) não paga condomínio e o restante do prédio (satélites) arca com essa despesa. "Essa fórmula penaliza o pequeno varejista para subsidiar o grande", diz. "É concorrência desleal."

Procurada a Associação Brasileira de Shopping Centers (Abrasce), que reúne os empreendedores de shoppings, informou, por meio de nota, que "as condições de locações são definidas por cada empreendimento e não pelo setor, como previsto no artigo 54 da Lei de Locações (Lei nº 8.245, de 1991)".

As informações são do jornal O Estado de S. Paulo.

Empresas oferecem test-drive de sapato e apartamento

UOL Notícias