data-hora de emissão posterior ao horário recebimento

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

porter
Usuário Nível 5
Usuário Nível 5
Mensagens: 1058
Registrado em: 10 Dez 2009 16:44
Localização: OLIMPIA-SP

data-hora de emissão posterior ao horário recebimento

Mensagem por porter »

Olá pessoal,
Ao gerar a Danfe pelo Acbr, está apresentando Rejeição referente ao horário, sei que a diferença se refere a mudança
do horário de verão, o que devo fazer, quando for gerar o arquivo, mostrar uma hora ou duas a menos que o horário normal ?

CStat=703
XMotivo=Rejeição: Data-Hora de Emissão posterior ao horário de recebimento


Harbour 3.2.0(dev)

Obrigado.
Avatar do usuário
rubens
Colaborador
Colaborador
Mensagens: 1520
Registrado em: 16 Ago 2003 09:05
Localização: Nova Xavantina - MT

data-hora de emissão posterior ao horário recebimento

Mensagem por rubens »

Boa tarde...

Eu coloco no windows o meu fuso-horário e ajustar para o horário de verão e vai sem problemas...
Não preciso mudar nada no programa.
Manda ler o Status e ve que hora tá retornando para ter certeza.

Rubens
"Eu e minha casa servimos ao Senhor e você ???"
porter
Usuário Nível 5
Usuário Nível 5
Mensagens: 1058
Registrado em: 10 Dez 2009 16:44
Localização: OLIMPIA-SP

data-hora de emissão posterior ao horário recebimento

Mensagem por porter »

Olá Rubens,
Mandei ler o Status de Serviço e retornou:
dhRecbo>2017-10-16T18:06:23-02:00</dhRecbto>

A data e a hora estão corretas, mas e -02:00, da forma como está, é correto ?
no caso aqui é estado de SP.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20416
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

data-hora de emissão posterior ao horário recebimento

Mensagem por JoséQuintas »

Aqui dá pra ver o fuso horário das UFs.
Deve aparecer marcado o bloco das linhas 207 a 218.
E o fuso horário de SP é -03:00 e no horário de verão -02:00

https://github.com/JoseQuintas/sefazcla ... #L207#L218

Nota: a url não está aparecendo como link.
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
porter
Usuário Nível 5
Usuário Nível 5
Mensagens: 1058
Registrado em: 10 Dez 2009 16:44
Localização: OLIMPIA-SP

data-hora de emissão posterior ao horário recebimento

Mensagem por porter »

Olá JoséQuintas,
É necessário informar no caso -02:00 apenas na data de emissão, ou também no
horário de saida e entrada ?

Obrigado.
Kapiaba
Colaborador
Colaborador
Mensagens: 1912
Registrado em: 07 Dez 2012 16:14
Localização: São Paulo
Contato:

data-hora de emissão posterior ao horário recebimento

Mensagem por Kapiaba »

hverao.png
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20416
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

data-hora de emissão posterior ao horário recebimento

Mensagem por JoséQuintas »

Tem que olhar lá no manual.
A tendência é que tudo fique com fuso horário, os layouts estão caminhando pra isso, mas por enquanto é obedecer o manual.
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
porter
Usuário Nível 5
Usuário Nível 5
Mensagens: 1058
Registrado em: 10 Dez 2009 16:44
Localização: OLIMPIA-SP

data-hora de emissão posterior ao horário recebimento

Mensagem por porter »

O horário de verão começou domingo dia 15/10/2017, mas onde estou tentando gerar as Danfes pelo Acbr, está configurado para começar dia 22/10/2017,
será que o motivo seria esse, para conseguir gerar estou atrasando o relógio em 1 hora, tentei também gerar as datas conforme mostradas abaixo, mas gera erro is not a valid time com sistema operacional windows 7, gostaria de saber como os amigos do fórum estão gerando a data da emissão da Danfe.

Obrigado.


Emissao=19/10/2017T10:51:44-02:00
ERRO: "19/10/2017T10:51:44-02:00" is not a valid time

Emissao=2017-10-19T10:56:39-02:00
ERRO: "2017-10-19T10:56:39-02:00" is not a valid time

Emissao=19-10-2017T11:14:05-02:00
ERRO: "19-10-2017T11:14:05-02:00" is not a valid time

Emissao=2017/10/19T12:52:48-02:00
ERRO: "2017/10/19T12:52:48-02:00" is not a valid time
Kapiaba
Colaborador
Colaborador
Mensagens: 1912
Registrado em: 07 Dez 2012 16:14
Localização: São Paulo
Contato:

data-hora de emissão posterior ao horário recebimento

Mensagem por Kapiaba »

???
inicio-horario-verao-v2.jpg
Começa dia 22/10/2017? Qual estado porter?
Avatar do usuário
rubens
Colaborador
Colaborador
Mensagens: 1520
Registrado em: 16 Ago 2003 09:05
Localização: Nova Xavantina - MT

data-hora de emissão posterior ao horário recebimento

Mensagem por rubens »

Porter...

Você está gerando pelo ACBR? Se sim, poste um exemplo do entnfe.txt aqui para gente ver...
Se for Acbr não precisa colocar a timezone não... (-02:00)
somente a data e a hora normal

Código: Selecionar todos

SAY "Emissao="	+DTOC(DATASIS)+' '+TIME()
Para mim éh deixar o horário de verão automático e o fuso-horário da região correto. No meu caso mesmo fora do horário de verão o fuso-horário é cuiabá ou manaus ...

Rubens
"Eu e minha casa servimos ao Senhor e você ???"
Kapiaba
Colaborador
Colaborador
Mensagens: 1912
Registrado em: 07 Dez 2012 16:14
Localização: São Paulo
Contato:

data-hora de emissão posterior ao horário recebimento

Mensagem por Kapiaba »

Veja se te ajuda:

tem que sincronizar o relogio do windows.

Código: Selecionar todos

   // qual o fuso horario - UTC do fuso horario
   IF nHORAMENOS = 1

      wDATA := STRZERO(YEAR(DATE()),4) +"-"+ ;
               STRZERO(MONTH(DATE()),2)+"-"+ ;
               STRZERO(DAY(DATE()),2)+"T"+TIME()+[-01:00]

   ELSEIF nHORAMENOS = 2

      wDATA := STRZERO(YEAR(DATE()),4) +"-"+ ;
               STRZERO(MONTH(DATE()),2)+"-"+ ;
               STRZERO(DAY(DATE()),2)+"T"+TIME()+[-02:00]

   ELSEIF nHORAMENOS = 3

      wDATA := STRZERO(YEAR(DATE()),4) +"-"+ ;
               STRZERO(MONTH(DATE()),2)+"-"+ ;
               STRZERO(DAY(DATE()),2)+"T"+TIME()+[-03:00]

   ELSEIF nHORAMENOS = 4

      wDATA := STRZERO(YEAR(DATE()),4) +"-"+ ;
               STRZERO(MONTH(DATE()),2)+"-"+ ;
               STRZERO(DAY(DATE()),2)+"T"+TIME()+[-04:00]  // OUTROS ESTADOS DO NORTE

   ELSE  // UTC NORMAL = 0 - Sincronizado com o Relogio do Windows.

      wDATA := STRZERO(YEAR(DATE()),4) +"-"+ ;
               STRZERO(MONTH(DATE()),2)+"-"+ ;
               STRZERO(DAY(DATE()),2)+"T"+TIME()


   ENDIF
Abs
Avatar do usuário
dbsh
Usuário Nível 3
Usuário Nível 3
Mensagens: 128
Registrado em: 14 Jul 2004 14:19
Localização: ES

data-hora de emissão posterior ao horário recebimento

Mensagem por dbsh »

No meu estado é UTC -03:00
Troco o computador para horário de verão e altero as chaves:

Pego a hora atual do micro para as chaves dhEmi, dhSaiEnt, e dhEvento

Na autorização de NFe:
dhEmi e dhSaiEnt
de -03:00 para -02:00

No cancelamento/CCE, autorização por evento altero a chave:
dhEvento
de -03:00 para -02:00

deve funcionar
010011110010000001110011011101010110001101100101011100110111001101101111001000001110100100100000011000110110111101101110011100110111010001110010011101011110110101100100011011110010000001100001001000000110111001101111011010010111010001100101
01001101011000010111001001100011011011110111001100100000010000010110111001110100011011110110111001101001011011110010000001000100011001010010000001000010011011110110111001101001
0101010001100101011011000011101000100000001010000011001000110111001010010011100100101101001110010011100000110100001100110010110100110101001100100011100100110000
porter
Usuário Nível 5
Usuário Nível 5
Mensagens: 1058
Registrado em: 10 Dez 2009 16:44
Localização: OLIMPIA-SP

data-hora de emissão posterior ao horário recebimento

Mensagem por porter »

Em alguns clientes o PC windows 7, está configurado para iniciar o horário de verão em 22/10/2017, está errado, em SP iniciou-se em 15/10/2017, se corrigir o horário adiantando-se 1 hora, da erro: data-hora emissão posterior ao horário de recebimento, quando tento gerar a DANFE, então para resolver o problema, estou atrasando o relógio em 1 hora, será que está dando esse erro porque eles estão configurados para iniciar o horário em 22/10/2017 ?

ENTNFE.TXT

Código: Selecionar todos

NFe.CriarNFe("
[infNFe]
versao=3.10
[Identificacao]
Emissao=19/10/2017 14:19:22
Codigo=12510
Numero=12510
NaturezaOperacao=VENDA                      
Finalidade=1
Modelo=55
Serie=1
Saida=19/10/2017 14:19:22
hSaiEnt=14:19:22
Tipo=1
idDest=1
FormaPag=0
indPres=9
indFinal=1
porter
Usuário Nível 5
Usuário Nível 5
Mensagens: 1058
Registrado em: 10 Dez 2009 16:44
Localização: OLIMPIA-SP

data-hora de emissão posterior ao horário recebimento

Mensagem por porter »

Kapiaba,
Da forma que você sugeriu, da erro: is not a valid time
Kapiaba
Colaborador
Colaborador
Mensagens: 1912
Registrado em: 07 Dez 2012 16:14
Localização: São Paulo
Contato:

data-hora de emissão posterior ao horário recebimento

Mensagem por Kapiaba »

Veja se essa te ajuda:

Código: Selecionar todos

Function TimeZone(dData)

   Local cDateTimeZone,aTimeStamp,cTzd

   Default dData:=Date()

   aTimeStamp:=hb_atokens(tip_timestamp(dData)," ")

   cTzd:=aTail(aTimeStamp)

   cTzd:=Left(cTzd,Len(cTzd)-2)+":"+Right(cTzd,2)

   cDateTimeZone:=StrZero(Year(dData),4)+"-"+StrZero(Month(dData),2)+"-"+StrZero(Day(dData),2)+"T"+Time()+cTzd

Return(cDateTimeZone)
Responder