segunda-feira, 23 de março de 2015

TCL/TK - Trabalhando com data.

Bom dia Galera!!



Segunda feira chegou e começa a semana. Semana passada foi uma correria danada e sofri pra trabalhar com data no TCL. Então vou postar aqui meu código para que vocês não precisem sofrer como eu.

Fui incumbido de gerar alguns relatórios na empresa, por período. Ai vocês já podem imaginar, trabalhar com data de inicio e fim.

Procurei vários sites que me dessem uma luz, que por uma sorte me fornecesse um código pronto pra minha necessidade ;-)  Quebrei a cara kkkk

Então segue algumas dicas sobre o que aprendi lendo materais:

- Pegando a data atual da máquina


[clock scan [clock format [clock seconds] -format %Y-%m-%d]]


Dica: o TCL trabalha com um número inteiro que representa a data, então a partir do comando acima, você pode fazer uma comparação de datas, exemplo:


set data_inicio [clock scan [clock format [clock seconds] -format %Y-%m-%d]]

if { [expr $data_inicio < [clock scan 20150303]] } {

    # faça algo se for verdadeiro

}




- Transformando o tipo de dados data do TCL para string


set a [clock scan [clock format [clock seconds] -format %Y-%m-%d]]

set data_formatada [clock format $a {%d/%m/%Y}]



- Incrementando a data


set a [clock scan [clock format [clock seconds] -format %Y-%m-%d]]

for {set i 0} {$i < 10} {incr i} {

     set a [clock scan {+1 days} -base $a]

}




Essas foram algumas dicas que descobri, assim que tiver mais dicas eu postarei aqui.



Grande abraço, Emanuel