Página 1 de 2
Calculo com datas (ano bissexto).
Enviado: 29 Fev 2008 18:19
por ABeltrani
Boa tarde a todos !
Preciso de uma função que me retorne uma data a partir de uma variável subtraida de 5 anos.
Por exemplo, uma variável com conteudo igual a 29/02/2008. Para obter a data referente a 5 anos antes eu peguei:
ctod(subs(dtoc(variavel),1,6)+str(year(variavel)-5,4))
como 29/02/2003 não existe...........
fica a pergunta: existe alguma função pronta para verificar isso ou eu terei mesmo que antes de fazer isso, verificar se o ano é bissexto ?
Obrigado a todos !
Enviado: 29 Fev 2008 18:42
por Maligno
Subtraia a variável tipo data da quantidade de dias equivalente a 5 anos, considerando a fração anual. Exemplo: dVar - (5 * 365.6). Não será um valor exato, mas estará bem próximo.
Enviado: 29 Fev 2008 19:12
por Clipper
Prezado Colega
Você pode usar a função FT_MADD() da LIB Nanforum, veja um exemplo :
FT_MADD(DATE(),-24) retorna a data de dois anos atrás
FT_MADD(DATE(),-36) retorna a data de 3 anos atrás
FT_MADD(DATE(),-4) retorna a data de 4 meses atrás
FT_MADD(DATE(),24) retorna a data de 2 anos a frente
FT_MADD(DATE(),120) retorna a data de 10 anos a frente
Até logo.
Marcelo
Enviado: 29 Fev 2008 19:44
por Maligno
Opa! Taí uma que eu não conhecia.

Enviado: 01 Mar 2008 08:06
por ABeltrani
Bom dia amigos Maligno e Clipper !
Como faço para baixar a lib nanforum ?
Enviado: 01 Mar 2008 08:56
por Clipper
Poxa !!! Você não usa a Nanforum ? Mas a partir de agora vai usar e muito, é uma LIB muito boa, você verá. Ela tem função para quase tudo.
Pega no site do Maligno.
http://pub.buzinello.com/index.php?d=./ ... pper/libs/
Até logo.
Marcelo
Enviado: 01 Mar 2008 09:14
por Pablo César
Tinha baixado o NAFOR.LIB (para ver se era essa a lib e indicar ao colega) do site do Maligno que é versão 3.05 e comparei com o que eu tinha (versão 2.1), mas o engraçado que o tamanho dos arquivos são maiores na versão 2.1.
Enviado: 01 Mar 2008 09:35
por Maligno
Mais código não significa código melhor.

Enviado: 01 Mar 2008 09:52
por Pablo César
Sim concordo (sabia que iria ser dito isso), mas que até o NG é maior na versão 2.1. Teriamos que comparar e ver quais são as funções a mais que pelo geral a versão mais recente possue mais funções.
Enviado: 01 Mar 2008 10:17
por Maligno
Normalmente os números de versões maiores são melhores. Embora haja exceções, não acho a NanFor tão importante que justifique o esforço da comparação. Mas, se descobrir alguma coisa e quiser compartilhar, poste sua análise aqui.
Enviado: 01 Mar 2008 10:17
por ABeltrani
Pessoal !
Funcionou blz.... Eu já tinha ouvido falar sobre a nanfor. Sempre procurei evitar o uso de Libs de terceiros. Com o passar do tempo e devido a necessidade, acabei passando a usar a CATools. Agora pelo visto, passarei tbm a usar a Nanfor. Vcs saberiam dizer se a CATools tem alguma função que faça o mesmo que a FT_MADD da Nanfor ? Outra dúvida que tenho é como acessar o NG da Nanfor.
Um abraço a todos !
Enviado: 01 Mar 2008 10:21
por Maligno
A CATools tem tanta coisa que nunca me dei ao trabalho de ver tudo. Uso pouca coisas. Mas é o caso de bisbilhotar o help das funções, que são separadas por tipo. E pode até que ser que encontre mesmo algo equivalente.
A NanFor, assim como a maioria das LIBs para Clipper, vem com um arquivo .NG para ser visto pelo leitor de NG, que tanto pode ser o padrão (DOS) ou a versão melhorada para Windows (recomendo). Se quiser, no meu site tem para download. Clique
aqui. É o arquivo chamado WEG.
NG com QEdit
Enviado: 01 Mar 2008 10:23
por Pablo César
Se você ja possue o NG.EXE (Norton Guide), digamos que você o tenha no C:\NG e você utiliza o QEDIT.EXE. Você primeiro copia o NANFOR.NG no diretorio C:\NG. E para chamar em conjunto com seu editor de textos, faça assim:
C:\NG\NG QEDIT PROGRAMA.PRG
E desta forma chama os dois (Editor de textos e o NG). Para ativar o NG, geralmente é Shift-F1, mas essa hot-key pode ser mudada no próprio NG.EXE
Obs.: eu por exemplo tenho uma batch que chama sem ter que digitar muito.
Enviado: 01 Mar 2008 10:41
por Clipper
Prezado Colega
A CT não tem função equivalente a FT_MADD(), antes de postar eu já tinha pesquisado, pois sei que a maioria dos colegas usa a CT, na minha opnião a NANFORUM é um complemento da CT e vice-versa, o que falta em uma acaba-se encontrando na outra, além é claro de terem funções equivalentes (na maioria dos casos).
Até logo.
Marcelo
Enviado: 01 Mar 2008 10:52
por Pablo César
E lembrando que se quiser apenas extrair uma função de uma determinada LIB você pode gerar um OBJ e por consequente criar/modificar suas próprias LIB. Utilizar LIBs, é perfeitamente aceitável, podendo usar ambas ao mesmo tempo (CT.LIB e NANFOR.LIB) e outras mais também (sempre e quando forem compatíveis com a linguagem).