Top Level Namespace

Defined Under Namespace

Modules: BlackStack

Instance Method Summary collapse

Instance Method Details

#before(n) ⇒ Object

n minutes



31
32
33
# File 'lib/pampa-local.rb', line 31

def before(n) # n minutes

  DB["SELECT DATEADD(mi, -#{n.to_s}, GETDATE()) AS [now]"].map(:now)[0].to_s[0..22]
end

#daysFromNow(n) ⇒ Object

n days



39
40
41
# File 'lib/pampa-local.rb', line 39

def daysFromNow(n) # n days

  DB["SELECT DATEADD(dd, +#{n.to_s}, GETDATE()) AS [now]"].map(:now)[0].to_s[0..22]
end

#diff(unit, t0, t1) ⇒ Object



24
25
26
27
28
29
# File 'lib/pampa-local.rb', line 24

def diff(unit, t0, t1)
  # La llamada a GETDATE() desde ODBC no retorna precision de milisegundos, que es necesaria para los registros de log.

  # La llamada a SYSDATETIME() retorna un valor de alta precision que no es compatible para pegar en los campos del tipo DATATIME.

  # La linea de abajo obtiene la hora en formato de SYSDATE y le trunca los ultimos digitos para hacer que el valor sea compatible con los campos DATETIME.

  (DB["SELECT DATEDIFF(#{unit}, '#{t0.to_s}', '#{t1.to_s}') AS [diff]"].map(:diff)[0]).to_i
end

#guidObject

funciones auxiliares



13
14
15
# File 'lib/pampa-local.rb', line 13

def guid()
  DB['SELECT NEWID() AS [id]'].map(:id)[0]
end

#monthsFromNow(n) ⇒ Object

n months



35
36
37
# File 'lib/pampa-local.rb', line 35

def monthsFromNow(n) # n months

  DB["SELECT DATEADD(mm, +#{n.to_s}, GETDATE()) AS [now]"].map(:now)[0].to_s[0..22]
end

#nowObject



17
18
19
20
21
22
# File 'lib/pampa-local.rb', line 17

def now()
  # La llamada a GETDATE() desde ODBC no retorna precision de milisegundos, que es necesaria para los registros de log.

  # La llamada a SYSDATETIME() retorna un valor de alta precision que no es compatible para pegar en los campos del tipo DATATIME.

  # La linea de abajo obtiene la hora en formato de SYSDATE y le trunca los ultimos digitos para hacer que el valor sea compatible con los campos DATETIME.

  (DB['SELECT SYSDATETIME() AS [now]'].map(:now)[0]).to_s[0..18]
end