Desenvolvedor OutSystems, como anda o seu JavaScript?

Desenvolvedor Outsystems, como anda o seu JavaScript
Desenvolvedor Outsystems, como anda o seu JavaScript

Por: Marco Peres – Desenvolvedor OutSystems na add

Uma das realidades mais fantásticas e “descabelantes” na área de TI, é o fato de que cada desenvolvedor resolve problemas de formas diferentes, com lógica própria e elementos técnicos distintos (às vezes, com uma criatividade desconcertante).

Vamos entender melhor?

Imagine a seguinte solicitação: “Crie uma Action que receba número (referente ao mês) e retorne um string (referente ao nome do mês em português)”.

Bom, se você está habituado com a plataforma low code OutSystems, temos quatro alternativas básicas como solução:

  1. Utilizar uma estrutura lógica com “If”;
  2. Utilizar uma estrutura “Switch”;
  3. Correr para “Forge” e torcer para achar alguma dica ou solução pronta;
  4. Fugir para as montanhas.

Partindo do princípio que você optou por construir a solução, assim como eu, utilizaremos o

‘Switch” conforme a action “getNameMonth”.

action_outsystems1
action_outsystems1

O que é action “getNameMonth”?

É uma “Action” simples que recebe um número e retorna um string com seu equivalente baseado nos 12 meses do ano (essa parte não muda, afinal teremos inexoravelmente 12 meses no ano!). O “otherwise” serve para você devolver um “Mês não definido!”.

Podemos resolver a mesma solicitação utilizando uma estrutura “If”? Com certeza, mas o código ficaria um pouco mais extenso.

Se você reparar, temos “getNameWeek”, onde utilizo a mesma lógica com “Switch”.

getName_Outsystems2
getName_Outsystems2

Tá, mas… O que isso tem a ver com Javascript?

Calma meu pequeno “Padwan”. É justamente aí que a trama se desenvolve.

Vamos a outra solicitação: “Desenvolva uma Action que receba dois números inteiros e retorne o intervalo de números entre eles.”

Bom, desenvolvedores… temos em um pensamento clássico a solução de criação desta Action

OutSystems utilizando as estruturas “ForEach e If”, mas se você já analisou esta solicitação e

tentou resolver usando “ForEach e IF”, já deve ter entendido onde quero chegar.

Porque não utilizar JavaScript?

Eu realmente adoro desenvolver em OutSystems, e parte deste sentimento está justamente em poder utilizar elementos como CSS, Javascript, C# e Java como complemento ou base de solicitações.

Uma das soluções em código JavaScript pode ser esta:

cod_javascript_outsystems3
cod_javascript_outsystems3

Código Javascript

cod_javascript_outsystems_4
cod_javascript_outsystems_4

Ok… mas a Action está devolvendo apenas o intervalo entre dois números em um string?

Sim, é isso mesmo! O Javascript apenas resolveu uma parte, digamos “complicada”, de forma simples e que pode ser reutilizada para obter quaisquer intervalos inteiros: dias do mês, meses do ano ou mesmo intervalo entre anos (ex: 2010 a 2021).

Como solução para seleção de dias ou mesmo meses, posso utilizar da seguinte forma:

  1. Passo os dois valores inicial e final para para Action “intervalReturn”;
  2. Recebo o string (com o resultado delimitado por vírgula);
  3. Utilizo “String Split” para transforma este string em uma lista;
  4. Utilizo “Foreach” para percorrer esta lista;
  5. E finalmente, incremento minha estrutura de list definitiva com a lista obtida pelo “String list” para que possa ser utilizado em “DropDown” ou qualquer outra necessidade.
estrutura_list_outsystems5
estrutura_list_outsystems5

Outra dica: se você quiser obter intervalo de dias do mês (já que os dias do mês podem variar), utilize as funções.

Espero que este artigo tenha colaborado!

Compartilhar
LinkedIn
Facebook
X
Ícone raddar add

Inscreva-se no raddar

Fique por dentro das novidade e tendências em Inovação, Agilidade e Tecnologia.

raddar