Jump to content
Fivewin Brasil

HERGON

Membros
  • Posts

    270
  • Joined

  • Last visited

  • Days Won

    9

Everything posted by HERGON

  1. Bom dia Apoio o mini encontro, de preferência em BH. Galera quando veio aqui da última vez, gostou. Herberson Gontijo
  2. Boa tarde Alguém tem rotina de geração da GNRE pela dll da FlexDocs que possa disponibilizar? De preferência utilizando a classe do Gilmer. Herberson Gontijo
  3. Boa tarde Tente fazer assim: cNome:=GetPvProfString( "LOCAL", "Computador", " ", "arquivo.ini") Herberson Gontijo
  4. Olá Implementamos no nosso PDV utilizando SHIPAY. Nessa integração vc consegue disponibilizar para vários bancos e carteiras digitais sem ter que fazer um a um, compensa dar uma olhada. Att. Herberson Gontijo
  5. Boa tarde Att. Herberson Gontijo
  6. Bom dia Eu faço assim, talvez ajude: Function fAcertarDtHr(lMostraOk) Local oWeb, cWeb, cProcura, cExtrai, cHora, cData, lAjusta:=.f. Default lMostraOk:=.t. If !VerificaNet() If lMostraOk fMsgStop("Computador não está conectado na internet.", "Sem Acesso à Internet") Endif Return .f. Endif MsgAguarde("Verificando data/hora pela internet.", "Aguarde...") SysRefresh() CursorWait() oWeb := WebConnect():New() cWeb := oWeb:Open( "http://www.horacerta.com.br/index.php?city=sao_paulo" ) cProcura:= '<input name="mostrador" type="text" size="25" value="' cExtrai := Subs(cWeb, At(cProcura,cWeb)+53,24) cData := Alltrim(Left(alltrim(cExtrai),10)) cHora := Alltrim(StrZero(If(Right(cExtrai,2)=="PM" .and. Val(subs(cExtrai,14,2))<=11, 12, 0)+Val(subs(cExtrai,14,2)),2)+":"+subs(cExtrai,17,5)) If Val(GetPvProfString("Diversos", "Ajuste da Hora", "", CurDrive()+":\"+CurDir()+"\"+cNomeTerm+".ini"))==0 // Não alterar a hora Elseif Val(GetPvProfString("Diversos", "Ajuste da Hora", "", CurDrive()+":\"+CurDir()+"\"+cNomeTerm+".ini"))==1 cHora := TsTring(Secs(cHora)-3600) Else cHora := TsTring(Secs(cHora)+3600) Endif MsgFechaAguarde() If Ctod(cData)<>Date() .and. Val(cData)<>0 .and. Subs(cHora,1,5)<>Subs(Time(),1,5) .and. Val(cHora)<>0 If MsgYesNo("Data e hora da Internet:"+CRLF+; cData+" - "+cHora+CRLF+CRLF+; "Data e hora do computador:"+CRLF+; Dtoc(Date())+" - "+Time()+CRLF+CRLF+; "Deseja ajustar a data e hora?", "Data e hora do computador parecem desatualizadas.") lAjusta:=.t. Endif Elseif Ctod(cData)==Date() .and. Val(cData)<>0 .and. Subs(cHora,1,5)<>Subs(Time(),1,5) .and. Val(cHora)<>0 If MsgYesNo("Hora da Internet:"+CRLF+; cHora+CRLF+CRLF+; "Hora do computador:"+CRLF+; Time()+CRLF+CRLF+; "Deseja ajustar a hora?", "A hora do computador está desatualizada") lAjusta:=.t. Endif Elseif Ctod(cData)<>Date() .and. Val(cData)<>0 .and. Subs(cHora,1,5)==Subs(Time(),1,5) .and. Val(cHora)<>0 If MsgYesNo("Data da Internet:"+CRLF+; cData+CRLF+CRLF+; "Data do computador:"+CRLF+; Dtoc(Date())+CRLF+CRLF+; "Deseja ajustar a data?", "A data do computador está desatualizada") lAjusta:=.t. Endif Else If lMostraOk MsgInfo("A data/hora do seu computador conferem com as informações da internet."+CRLF+CRLF+; "Data: "+cData+" - Hora: "+cHora, "Informações da Internet") Endif Endif If lAjusta MsgRun( "Ajustando data e hora.", "Aguarde...", { || fAjustaDataHora(cData, cHora) } ) MsgInfo("Ajuste realizado com sucesso.", "Ajuste") Endif Return Nil Static Function fAjustaDataHora(cData, cHora) MyRun( "date "+cData ) MyRun( "time "+cHora ) If Ctod(cData) <> date() MyRun("timedate.cpl") //abre tela data e hora windows Endif Return .t. Tem algumas funções próprias, mas comente e teste. Herberson Gontijo
  7. Olá Rossine Então, eu utilizo a classe do Gilmer com a dll da FlexDocs apenas para emissão da NF-e (para NFC-e, NÃO utilizo), fiz testes hoje em homologação para NF-e e tudo funcionou normal. Se quiser posso colocar um xml de exemplo com as novas tag's aqui. Abraço Herberson Gontijo
  8. Bom dia pessoal Além de atualizar a dll da flexdocs para a versão "NFe_Util 2G v4.0.8b" tem que fazer as mudanças conforme imagem em anexo. Att. Herberson Gontijo
  9. Rochinha Gostei muito da dica, testei via comando e funcionou bem, vou implementar no meu sistema. Obrigado. Herberson Gontijo
  10. Bom dia Obrigado pela resposta Jmsilva, será de grande ajuda. Infelizmente não tenho a LIB do ACBr para testar. Vou tentar conseguir, mas o fonte que disponibilizou facilitará muito o meu trabalho, o que agradeço mais uma vez. Herberson Gontijo
  11. Bom dia Alguém já implementou, em xHarbour, boletos/remessa com ACBr utilizando a DLL? Hoje utilizo o ACBr Monitor, mas gostaria de migrar para DLL, se tiver algum exemplo para me basear. Agradeço qualquer ajuda. Herberson Gontijo
  12. Bom dia amigo Tudo bem? Eu uso o ACBr para emissão e registro dos boletos. Ainda utilizando o monitor, mas já tem a dll que já tem posts aqui no fórum, talvez seja a melhor opção. Abraços Herberson Gontijo
  13. Boa tarde Wellington Salvo engano, em todos os estados a numeração da NF-e e NFC-e são independentes, começando em 1 até 999.999, devendo recomeçar a numeração a cada nova série. Att. Herberson Gontijo
  14. Realmente, acho que tive que mexer na classe, só agora estou lembrando... vou colar aqui. // Consulta NF-e destinadas Method distNSU(cSiglaUFDestinado,cCNPJDestinatario,cUltNSURecebido,cVerAplic,cUltNsu,cMaxNsu,nQtdeDocto,uRetorno,lRetArray) Class TVoNFeUtil2G Local nStat:=0 Local cMsgResultado:="",nIndContinuacao:=1 local cMsgDados:="", cMsgRetWS:="",cRetTxt:="",aRegistro:={},oTxt Default cSiglaUFDestinado:=::SiglaUF,cUltNSURecebido:="0",cUltNsu:="0",lRetArray:=.t. Default cVerAplic:="",cMaxNsu:="",nQtdeDocto:=1 ::Limpa() If ::CertificadoSelecionado() If ::ConsultaStatus() Try /* cRetTxt+=::oNFEUtil:distNSU("AN",::Ambiente, ::cCertificado,; "4.00", @cMsgDados, @cMsgRetWS,@nStat,; @cMsgResultado,cCNPJDestinatario,cSiglaUFDestinado,; cUltNSURecebido,@cVerAplic,@::Recebimento,@cUltNsu,; @cMaxNsu,@nQtdeDocto,; ::proxy,::usuario,::senha,::Licenca) */ cRetTxt+=::oNFEUtil:distNSU("AN",::Ambiente, ::cCertificado,; "4.00", @cMsgDados, cMsgRetWS,@nStat,; cMsgResultado,cCNPJDestinatario,cSiglaUFDestinado,; cUltNSURecebido,cVerAplic,::Recebimento,@cUltNsu,; @cMaxNsu,@nQtdeDocto,; ::proxy,::usuario,::senha,::Licenca) Memowrit("manifest.txt", cRetTxt, .f.) Catch oError fMsgStop("Erro! oNFeUtil:DistNSU."+CRLF+; "Error: " + cValToChar( oError:GenCode) + CRLF + ; "SubC: " + cValToChar( oError:SubCode ) + CRLF + ; "OSCode: " + cValToChar( oError:OsCode ) + CRLF + ; "SubSystem: " + cValToChar( oError:SubSystem ) + CRLF + ; "Operação: " + cValToChar( oError:Operation ) + CRLF + ; "Mensagem: " + oError:Description, CAPTION_MSG) Return(.f.) End Try ::cStsNFe := Alltrim(Str(nStat)) ::cStsNFeMsg := cMsgResultado ::Protocolo := cUltNsu Else //Tratar erro para servidor fora Endif If !Empty(cRetTxt) ::lAutorizada:=.t. If lRetArray While .t. nPos:=At(CHR(13), cRetTxt) If nPos>0 AAdd(uRetorno, {Subs(cRetTxt,1,15), Subs(cRetTxt,17,35), Subs(cRetTxt,53,nPos-53)}) cRetTxt:=Subs(cRetTxt,nPos+1) Else Exit Endif Enddo Else uRetorno:=cRetTxt Endif Endif Endif Return( ::lAutorizada ) Att. Herberson Gontijo
  15. Acabei de testar aqui e funcionou perfeitamente Att Herberson Gontijo
  16. Empresoft Você está fazendo o teste com o certificado do cliente e está configurado para PRODUCAO? Porque se tiver para HOMOLOGAÇÃO, não mostrará as NF-e's que foram emitidas contra o CNPJ dele em produção não. Tente passar o cUltNsuRec :="0" para processar desde o começo. Att. Herberson Gontijo
  17. Faça assim: oNfeUtil:distNSU(cUfManif,cCnpjManif,cUltNsuRec,"",@cUltNsu,@cMaxNsu,1,@aRegistros) If oNfeUtil:cStsNFe=="7001" .or. oNfeUtil:cStsNFe=="7003" fMsgStop("Licença da dll da FlexDocs não confere, contacte o suporte.", "Atenção") cChaveDll:=" " Return .f. Endif If Len(aRegistros)==0 MsgAlert("Não existe nenhum documento pendente.","Consulta") Else xbrowse(aRegistros) Endif Att. Herberson Gontijo
  18. Olá Já tem um bom tempo que fiz, mas pelo que me lembro há problemas ao se passar as variáveis por referencia... Estou utilizando assim e dá certo: oNfeUtil:distNSU(cUfManif,cCnpjManif,cUltNsuRec,"",@cUltNsu,@cMaxNsu,1,@aRegistros) Passe por referência apenas as variáveis estritamente necessárias e retire "@" das demais, conforme acima. Att. Herberson Gontijo
  19. Bom dia Vitor, fiquei na sexta-feira o dia inteiro tentando resolver esse problema, inclusive abri ticket na Flexdocs... no final do dia com a resposta da Flexdocs e a interpretaão/ajuda do Gilmer conseguimos resolver (ele, rsrsrs). Teve que mudar a classe... se o trecho... ElseIf CSOSN=="500" AAdd( axArray, {"ICMSSN500" , {}, 1 } ); nPos := len(axArray) AAdd( axArray[nPos][2], {"orig" , TVoNFeItem():New("N", 1, 1, 1 ,,,oItem:orig ) } ) AAdd( axArray[nPos][2], {"CSOSN" , TVoNFeItem():New("N", 1, 1, 3 ,,,oItem:CSOSN ) } ) AAdd( axArray[nPos][2], {"vBCSTRet" , TVoNFeItem():New("N", 0, 1, 15,2 ,,oItem:vBCSTRet ) } ) AAdd( axArray[nPos][2], {"pST" , TVoNFeItem():New("N", 0, 1, 15,2 ,,oItem:pST ) } ) AAdd( axArray[nPos][2], {"vICMSSTRet" , TVoNFeItem():New("N", 0, 1, 15,2,,oItem:vICMSSTRet ) } ) AAdd( axArray[nPos][2], {"vBCFCPSTRet" , TVoNFeItem():New("N", 0, 1, 15,2 ,,oItem:vBCFCPSTRET ) } ) AAdd( axArray[nPos][2], {"pFCPSTRet" , TVoNFeItem():New("N", 0, 1, 6 ,2 ,,oItem:pFCPSTRET ) } ) AAdd( axArray[nPos][2], {"vFCPSTRet" , TVoNFeItem():New("N", 0, 1, 15,2 ,,oItem:vFCPSTRET ) } ) Att. Herberson Gontijo
  20. Bom dia Mas como você testa se foi clicado no cabeçalho marcando ou desmarcando a opção ? Herberson Gontijo
  21. Bom dia Tentei rodar o exemplo mas deu o erro abaixo: Error: Unresolved external '_hb_partdt' referenced from H:\FWH1608\LIB\FIVEHX.LIB|VALTOSTR Esse exemplo é para xHarbour ou Harbour? Se for para Harbour como passo para funcionar com xHarbour? Herberson Gontijo
  22. Bom dia Utilize a Manifestação do Destinatário que vc nunca mais precisará de baixar xml pelo navegador. Abraço Herberson Gontijo
  23. Bom dia Kapiaba Tive o mesmo problema, olhei nos fontes e identifiquei que tem que criar uma subpasta com o nome DADOS que ai o sistema cria as bases de dados necessárias. Abraço Herberson Gontijo
  24. Boa tarde Fiz o depósito agora na hora do almoço. Abraço Herberson Gontijo - Ponteware Informática.
  25. Bom dia Sim está marcado, mas mesmo assim não processa. Herberson Gontijo
×
×
  • Create New...