• Categorias
  • Recente
  • Tags
  • Popular
Collapse

Fluxo para operacoes matematicas com hora e data no Maker 5

Agendado Fixado Trancado Movido Fluxos
11 Posts 2 Posters 569 Visualizações
    • Mais Antigo para Mais Recente
    • Mais Recente para Mais Antigo
    • Mais Votados
Responder
  • Responder como tópico
Entre para responder
Este tópico foi deletado. Apenas usuários com privilégios de moderação de tópico podem vê-lo.
  • M Offline
    M Offline
    Mider
    wrote on última edição por
    #1

    Ola,

    Alguém sabe como funciona o maker na parte de fluxos para fazer operações matemáticas com horas na versão 5? Tem que fazer uma conversão antes nos parâmetros ou ja com a função soma e possível? Vi que por parâmetros as operações la so trabalham com o tipo numero e nao data/hora.

    1 Resposta Última resposta
    0
  • DiegoJCD Offline
    DiegoJCD Offline
    DiegoJC
    wrote on última edição por DiegoJC
    #2

    Existem as funções de diferença entre datas, pesquise por "Diferenças" e veja se te atende.

    Não sei qual a necessidade, mas se for adicionar ou subtrair, você pode usar a função "Incrementar Hora / Minuto / Segundo", como na imagem abaixo:

    image.png

    OBS: Se quiser somar coloca numero positivo, se quiser subtrair coloca numero negativo.

    1 Resposta Última resposta
    1
  • M Offline
    M Offline
    Mider
    wrote on última edição por
    #3

    Ola bom dia,

    Seria so pra fazer as operações matemáticas mesmo entre as horas sem as datas. Subtração, divisão, multiplicação, soma e etc.

    1 Resposta Última resposta
    0
  • DiegoJCD Offline
    DiegoJCD Offline
    DiegoJC
    wrote on última edição por
    #4

    OK! Avalie as funções nativas, muitas delas facilitam a vida na hora de trabalhar com data e hora. Agora quando é algo específico, geralmente eu trato manualmente, converto para numero, faço as operaçoes necessarias e transformo em data / hora novamente.

    Lembrando também, existe a possibilidade de realizar essas operações via banco (Query - SQL) e até via Javascript.

    Um abraço.

    1 Resposta Última resposta
    0
  • M Offline
    M Offline
    Mider
    wrote on última edição por
    #5

    Vendo aqui nas funções nativas(matemáticas) da maker vi que só aceita parâmetros sendo eles no formato de números como datatype. Neste caso via fluxo seria possível fazer a conversão de data pra numero? Também nao achei aqui. Via Javascript e possível como? Estou meio perdido porque estou ainda me adaptando ao maker.

    1 Resposta Última resposta
    0
  • DiegoJCD Offline
    DiegoJCD Offline
    DiegoJC
    wrote on última edição por
    #6

    Se você usar a função "Para Inteiro" em uma data, se nao estiver enganado, ela coverte para numero "Timestamp".

    Ou você obter ir obtendo a parte da data que deseja, por exemplo. usando a função "ANO", retorna o ano da data em inteiro, ou "MÊS" ou "DIA" para retornar o mês e dia em formato inteiro.

    Via Javascript o Maker tem uma função nativa "Executar JavaScript", no qual você pode escrever seu código e executá-lo.

    1 Resposta Última resposta
    0
  • DiegoJCD Offline
    DiegoJCD Offline
    DiegoJC
    wrote on última edição por
    #7

    Fiz um exemplo rapido aqui para alertar a conversão via MAKER, veja se ajuda:

    image.png

    o Códgio JS ta aqui se quiser copiar e colar:

    function dataParaTimestamp(data) {
    const timestamp = new Date(data).getTime();
    return timestamp;
    }

    const minhaData = new Date("2023-08-04T12:34:56");
    const timestamp = dataParaTimestamp(minhaData);
    return timestamp;

    1 Resposta Última resposta
    0
  • M Offline
    M Offline
    Mider
    wrote on última edição por
    #8

    Oi boa tarde,

    Vou testar aqui o JS e ver se vai. Na função para inteiro vi la antes que ele arredonda e deixa so uma casa. Por exemplo de 12,54 ele converte pra 12. Neste caso no JS iria precisar de dois parâmetros pois quero pegar hora da entrada e a saída por exemplo 08:00 e 12:00 e assim fazer as operações matemáticas. Pelo que eu mexi aqui na API de função, quando ele ja vem com os parâmetros pre definidos nao pra colocar mais.

    1 Resposta Última resposta
    0
  • DiegoJCD Offline
    DiegoJCD Offline
    DiegoJC
    wrote on última edição por
    #9

    Boa tarde,

    No JS você pode passar quantos parametro desejar, você pode montar a string do JS concantenado e passando parametro ou pode usar a função "Trocar todas as subsquencias".

    Eu costumo aninhar varias "Trocar todas as subsequencias", uma para cada parametro, utilizando uma tag no meu parametro, por exemplo @dataHoraEntrada e dai eu troco essa subquencia pelo valor do parametro, obvio que só precisa se atentar a formatação do JS.

    Espero ter ajudado.

    1 Resposta Última resposta
    0
  • DiegoJCD Offline
    DiegoJCD Offline
    DiegoJC
    wrote on última edição por
    #10

    Escrevi esse exemplo, subtraíndo 2 datas e retornando a quantidade de horas entre elas:

    image.png

    Para funcionar coloquei a data nesse formato:

    image.png

    Segue o código JS:
    function diferencaEmHoras(dataInicio, dataFim) {
    const inicio = new Date(dataInicio);
    const fim = new Date(dataFim);
    const diferencaEmMilissegundos = Math.abs(fim - inicio);
    const diferencaEmHoras = diferencaEmMilissegundos / (1000 * 60 * 60); // 1000 ms * 60 s * 60 min = 1 hora
    return diferencaEmHoras;
    }

    const dataInicio = "@dataInicio";
    const dataFim = "@dataFim";

    const diferencaHoras = diferencaEmHoras(dataInicio, dataFim);
    return diferencaHoras;

    1 Resposta Última resposta
    0
  • M Offline
    M Offline
    Mider
    wrote on última edição por
    #11

    Ola Diego boa tarde,

    No caso dos parâmetros ali no JS eu entendi, mas a dificuldade que estou encontrando e em relação aos parâmetros que passamos la no fluxo do maker. Eu estou so trabalhando com pegar as horas no formulário e fazer as operações matemáticas. Como elas estão no tipo hora o maker nao esta indo, pois o maker só faz operações com tipo numero la na API.

    Por exemplo la no formulário na caixa de texto tem : entrada(12:00) saída(17:00). Como estao nesse tipo de dados não achei uma função de conversão de Hora para Numero na API para dai sim fazer as operações matemáticas.

    1 Resposta Última resposta
    0

  • Login

  • Não tem uma conta? Cadastrar

  • Login or register to search.
  • Primeiro post
    Último post
0
  • Categorias
  • Recente
  • Tags
  • Popular
  • Login

  • Não tem uma conta? Cadastrar

  • Login or register to search.