Ir para conteúdo
  • Cadastre-se

John Tadeu

Membros
  • Total de ítens

    2
  • Registro em

  • Última visita

Posts postados por John Tadeu

  1. 1   - DT_RZ=0 & DT_MOV=H            => NÃO PENDENTE
    2   - DT_RZ=A & DT_MOV=A            => PENDENTE

    3    - DT_RZ=H & DT_MOV=0            => BLOQUEADO
    4.1 - DT_RZ=0 & DT_MOV=0 & DT_URZ=A => DESBLOQUEADO
    4.2 - DT_RZ=0 & DT_MOV=0 & DT_URZ=H => BLOQUEADO

    *A = data anterior

    *H = Hoje       #data atual

    *0 = '000000' #nulo

  2. Estava com o mesmo problema, então fiz o seguinte codigo, esta em ruby, não sei se lhe ajuda:

     

     

    #1   - DT_RZ=0 & DT_MOV=H            => NÃO PENDENTE
    #2   - DT_RZ=A & DT_MOV=A            => PENDENTE

    #3    - DT_RZ=H & DT_MOV=0            => BLOQUEADO
    #4.1 - DT_RZ=0 & DT_MOV=0 & DT_URZ=A => DESBLOQUEADO
    #4.2 - DT_RZ=0 & DT_MOV=0 & DT_URZ=H => BLOQUEADO

    #*A = data anterior

    #*H = Hoje       #data atual

    #*0 = '000000' #nulo

     

    def self.data_movimento
        data_pointer = FFI::MemoryPointer.new 6
        ECF::Bematech::FFI.Bematech_FI_DataMovimento(data_pointer)
        data = data_pointer.read_string
        data_pointer.free

        data.dup.insert(-3, "20").to_dateformat
      end

      def self.data_movimento_ultima_reducao_z
        data_pointer = FFI::MemoryPointer.new 6
        ECF::Bematech::FFI.Bematech_FI_DataMovimentoUltimaReducaoMFD(data_pointer)
        data = data_pointer.read_string
        data_pointer.free

        data.dup.insert(-3, "20").to_dateformat
      end

      def self.data_hora_ultima_reducao
        data_pointer = FFI::MemoryPointer.new 6
        hora_pointer = FFI::MemoryPointer.new 6
        ECF::Bematech::FFI.Bematech_FI_DataHoraReducao(data_pointer, hora_pointer)
        data = data_pointer.read_string
        data_pointer.free
        hora = hora_pointer.read_string
        hora_pointer.free
        {:data=> data.insert(-3, "20").to_dateformat, :hora => hora}

      end

     

      def self.reducao_z_pendente?
        puts 'verificando reducao z...'
        data_movimento = self.data_movimento
        data_reducao   = self.data_movimento_ultima_reducao_z
        data_hora      = self.data_hora_ultima_reducao
        puts "data_mov:#{data_movimento}; mov_reducao:#{data_reducao}; ult_reducao: #{data_hora}"
        if !data_reducao.nil? and !data_movimento.nil?
          if data_reducao.to_date < Time.now.to_date and data_movimento.to_date < Time.now.to_date
            puts "Redução Z pendente!"
            return true
          end
        end
        puts "Sem Pendencia"
        false
      end

×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.