Skip to content
  • Categorias
  • Recente
  • Tags
  • Popular
Collapse
Brand Logo

  1. Fórum Maker
  2. Categorias
  3. Fluxos
  4. Fluxo para operacoes matematicas com hora e data no Maker 5

Fluxo para operacoes matematicas com hora e data no Maker 5

Agendado Fixado Trancado Movido Fluxos
11 Posts 2 Posters 727 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.
  • DiegoJCD Offline
    DiegoJCD Offline
    DiegoJC
    escreveu em ú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
      escreveu em ú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
        escreveu em ú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
          escreveu em ú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
            escreveu em ú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
              escreveu em ú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
                escreveu em ú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
                  escreveu em ú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
                    escreveu em ú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
                      escreveu em ú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
                      Responder
                      • Responder como tópico
                      Entre para responder
                      • Mais Antigo para Mais Recente
                      • Mais Recente para Mais Antigo
                      • Mais Votados


                      • Login

                      • Não tem uma conta? Cadastrar

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