Jump to content
nuno1989

Data e Hora

Recommended Posts

nuno1989

Ola muito boa tarde, 

Precisava de ajuda com o seguinte, tenho um problema sempre que uma loja faz o fecho de caixa por volta das 23h59 ele assume o dia seguinte. O que faz com não consiga fazer abertura do dia seguinte porque ele assume o dia seguinte com as 23 horas e 59

Exemplo:

Hora de abertura 2020-01-25 00:00:00.000   08:50
Hora de fecho 2020-01-26 00:00:00.000       23:59 hora

 

Cria saber se me conseguem ajudar a corrigir  este problema ou mesmo criar um job para correr em todas as lojas e todos os dias a fazer essa verificação e se tiver mal corrigir.

 

Obrigado 

 

 

Share this post


Link to post
Share on other sites
M6

Podes sempre assumir que o dia de fecho é o mesmo do dia de abertura. Se forçares isso, resolves o problema.


10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Share this post


Link to post
Share on other sites
nuno1989

bom dia e obrigado pela resposta amigo.

mas uma questão no caso de elas fecharem depois da 23:59  exemplo 00:01 vou ficar com 

exemplo dia 27 abertura as 9 horas e fecho dia 27 00:01 não me vai dar problemas?

 

obrigado

Share this post


Link to post
Share on other sites
M6

Vai, mas nesse caso colocas 23:59 no fecho.


10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Share this post


Link to post
Share on other sites
nuno1989

ok sabes como posso fazer esse update de forma automática. a minha ideia era colocar um job mas não sei como fazer o codigo para este caso.

por norma faço manual loja a loja update caixa set Fech='2020-01-26 00:00:00.000' where doc_num='01FCX200065'.

cada loja tem um numerador.....

Share this post


Link to post
Share on other sites
M6

A melhor forma é codificares um trigger para fazer isso.


10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Share this post


Link to post
Share on other sites
nuno1989

ok obrigado 

consegues me ajudar com este codigo? 

UPDATE caixa_docs  SET DtAber = DtFech , horafecho='23:59'

SELECT TOP 1 
*FROM
    Caixa_Docs
    where HoraFecho not in (null)
ORDER BY 
    DtAber DESC;

 

como é que consigo por o update a fazer só a este select 

 

Share this post


Link to post
Share on other sites
M6

Não precisas de fazer o top 1, partindo do principio que só tens uma loja, basta aplicares o where diretamente no update. O que estás a fazer nesses dois comandos não tem qualquer significado lógico no que toca à seleção de registos a aplicar ao update pois são comandos distintos que estás a dar: o primeiro faz um update a todos os registos e o segundo devolve-te o primeiro registo que encontrar onde a hora de fecho não é null - já agora, não é "not in (null)" é "is null" ou "is not null".


Deves ver antes se realmente já estás no dia seguinte em relação ao dia de abertura, e só nesse caso é que aplicas essa regras dos 23:59 para o dia anterior. Se se está a fechar no dia de abertura, imagina que no dia de 24 de Dezembro fecham pelas 13:00, então deves usar a data e hora real do fecho.


10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.