Esse convênio 60/2017 é exatamente o texto que eu postei numa mensagem anterior.
Será que a Fazenda está lendo o fórum PCToledo e viu minha mensagem? kkkkk

Moderador: Moderadores
Tente se puder adaptar seu utilitário ao site do convênio 52 de 7 de Abril. O utilitário que postei acima é funcional para identificar o CEST, tudo bem. Eu também extraà a tabela pelo html do site da SEFAZ, mas acabei de pegar um erro: o CEST 3926.90.90 tem 4 CEST´s, e não 3 CEST´s como na minha tabela. Queria ver se conseguiria usando seu aplicativo atualizar minha tabela.
aNcm := hb_RegExSplit( "(br)", XmlNode( cXmlColList[ 3 ], "p" ) )
aNcm := PegaNcm( cXmlColList[ 3 ] )
Putz... Que "M". Isso mesmo. Valeu a dica.JoséQuintas escreveu:Atualizei, e ocorreu o mesmo problema.
O html está diferente nessa parte.
Enquanto os outros tem (BR) separando os códigos, esse usa espaço em branco e também parágrafo.
Legal...JoséQuintas escreveu:Já posto os fontes em seguida
FUNCTION ValidaCest()
STATIC oCestList := {}
IF Len( oCestList ) == 0
oCestList := CestList()
ENDIF
Relamente é rápido mesmo, mas com a variável estática fica melhor. Embora no meu caso vou ajustar em DBF para manter a estrutura do meu sistema.JoséQuintas escreveu:Pra não ter que carregar a lista toda hora, uma opção é criar uma variável estática.
cTxt := Hb_UTF8ToStr( cTxt )
cTxt := Win_AnsiToOEM( cTxt )
FOR nCont = 1 TO 10
NEXT
FOR EACH cElemento IN { 1, 2, 3 }
NEXT
FOR nCont = 1 TO nTotal
NEXT
FOR EACH oElemento IN aValueList
NEXT
FOR %%A IN ( 1 2 3 ) DO ECHO %%A
FOR nCont = 1 TO AlgumCalculo()
NEXT
FOR EACH cXmlCol IN AlgumCalculo()
NEXT
Pois é... Mas aqui foi uma coisa muito engraçada. No inÃcio eu tentei usar na migração o TRY/CATCH com o Harbour e nunca conseguia. Fiquei muito tempo tentando, e só depois que desisti descobri que para usar o TRY/CATCH com Harbour tinha que incluir o arquivo hbcompat.ch.JoséQuintas escreveu:Tem horas que é só porque consideramos difÃcil, que acabamos não aprendendo.
nIniXml := Hb_At( ["Subtitulo">ANEXO I</p>], cXml )
nFimXml := Hb_At( ["Subtitulo">ANEXO XXVI</p>], cXml )
cXml := SubStr( cXml, nIniXml, ( nFimXml - nIniXml ) )
Local nFimXml, nIniXml
cXml := Substr( cXml, 1, At( [Subtitulo">ANEXO XXVI</p>], cXml ) )
Imagina as empresas, Avon, Tupperware, Jequiti por exemplo. São empresas cuja atividade principal se destina a venda por marketing direto (porta a porta), e com o agravante de boa parte dos produtos serem importados.JoséQuintas escreveu:Esse porta a porta confundiu.
Se é vendedor ambulante, ele não é indústria, porque teria ST?
Mesmo que indique direto da indústria para o consumidor, de uma porta até outra, também confunde aplicar ST.
Alguma conclusão sobre essa parte?
// Retira anexo
//cXml := Substr( cXml, 1, At( [VENDA DE MERCADORIAS PELO SISTEMA PORTA A PORTA], cXml ) )
//
Retornar para Legislação Fiscal e Tributária
Usuários vendo este fórum: Nenhum usuário registrado online e 10 visitantes