Bom dia...
Alguém tem uma tabela relacionando os ncms extintos agora em 31/03 com ncms válidos?
Tipo
NCM antigo -> NCM (novo/válido)
Obrigado
Rubens
Tabela relacionada de ncms extintos em 31/03/2017
Moderador: Moderadores
Tabela relacionada de ncms extintos em 31/03/2017
usa a função do ACBr pra baixar os válidos atuais e compara com a tua...
Código: Selecionar todos
NCM.BaixarListaSun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
- rubens
- Colaborador

- Mensagens: 1520
- Registrado em: 16 Ago 2003 09:05
- Localização: Nova Xavantina - MT
Tabela relacionada de ncms extintos em 31/03/2017
Não é bem esse o problema Fladimir...
O negócio é que deu mais de 06 páginas de ncms extintos.. Dai isso no cliente tá sendo um atropelo... Eu tenho a tabela de ncms válidos... o negócio é que os caras querem tudo de mão beijada... e na realidade se tivesse um jeito de facilitar isso eu faria... seria um diferencial... enquanto outros sistemas tem que fazer na unha ou esperar uma nova comprar par corrigir o meu sistema "trocaria" todos os ncms extintos... mas acho que não vou encontra isso pronto não... o jeito é ou zerar os produtos com ncms extintos e imprimir uma listagem para o cliente corrigir, ou deixar ele corrigir conforme vai aparecendo os erros na hora de enviar nfe ou nfce...
Obrigado
O negócio é que deu mais de 06 páginas de ncms extintos.. Dai isso no cliente tá sendo um atropelo... Eu tenho a tabela de ncms válidos... o negócio é que os caras querem tudo de mão beijada... e na realidade se tivesse um jeito de facilitar isso eu faria... seria um diferencial... enquanto outros sistemas tem que fazer na unha ou esperar uma nova comprar par corrigir o meu sistema "trocaria" todos os ncms extintos... mas acho que não vou encontra isso pronto não... o jeito é ou zerar os produtos com ncms extintos e imprimir uma listagem para o cliente corrigir, ou deixar ele corrigir conforme vai aparecendo os erros na hora de enviar nfe ou nfce...
Obrigado
"Eu e minha casa servimos ao Senhor e você
"
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Tabela relacionada de ncms extintos em 31/03/2017
usa a função do ACBr pra baixar os válidos atuais e compara com a tua...
Código: Selecionar todos
/*
--------------------------------------------------
PEDI0300 - Importa NCM 2017 Fazenda
2017.04.07 - José Quintas
--------------------------------------------------
201.04.07.2200 - Criação
--------------------------------------------------
*/
#include "jpa.ch"
PROCEDURE PEDI0300
LOCAL acFiles, cFileExcel, cSheetName, nQtd, nQtdTotal, cNcm, dValIni, dValAte, cnExcel, cSql := "", lBegin := .F.
LOCAL cnMySql := ADOClass():New( AppcnMySqlSite() )
acFiles := Directory( "IMPORTA\*.xls" )
IF Len( acFiles ) == 0
MsgStop( "Planilha Tabela NCM não encontrada na pasta IMPORTA\" )
RETURN
ENDIF
cFileExcel := hb_cwd() + "IMPORTA\" + acFiles[ 1, 1 ]
SayScroll( cFileExcel )
IF ! Mensagem( "Confirma processo?", "S,N" ) == "S"
RETURN
ENDIF
SayScroll( "Importando dados" )
cnMySql:Open()
cnMySql:ExecuteCmd( JPPRONCMCreateMySql() )
cnMySql:ExecuteCmd( "TRUNCATE TABLE JPPRONCM" )
cnExcel := ADOClass():New( ExcelConnection( cFileExcel ) )
cnExcel:Open()
cSheetName := "[NCM_2012-2017 x uTrib$]"
cnExcel:cSql := "SELECT COUNT(*) AS QTD FROM " + cSheetName
nQtdTotal := cnExcel:ReturnValueAndClose( "QTD" )
cnExcel:cSql := "SELECT * FROM " + cSheetName
cnExcel:Execute()
nQtd := 0
cnExcel:MoveFirst()
cnExcel:MoveNext() // pula titulo
GrafTempo( "Importando NCM" )
cnMySql:Execute( "INSERT INTO JPPRONCM ( PNCODIGO, PNVALDE, PNVALATE ) VALUES ( '00000000', '2000-01-01', NULL )" )
DO WHILE ! cnExcel:Eof()
GrafTempo( nQtd, nQtdTotal )
nQtd += 1
cNcm := cnExcel:StringSql( 0 )
dValIni := Ctod( cnExcel:StringSql( 1 ) )
dValAte := Ctod( cnExcel:StringSql( 2 ) )
IF Val( cNcm ) > 0
cNcm := StrZero( Val( cNcm ), 8 )
IF Len( cSql ) == 0
cSql := "INSERT IGNORE INTO JPPRONCM ( PNCODIGO, PNVALDE, PNVALATE ) VALUES "
lBegin := .T.
ENDIF
IF ! lBegin
cSql += ", "
ENDIF
lBegin := .F.
cSql += "( " + ;
StringSql( cNcm ) + ", " + ;
DateSql( dValIni ) + ", " + ;
DateSql( dValAte ) + " )"
IF Len( cSql ) > MYSQL_MAX_CMDINSERT
cnMySql:ExecuteCmd( cSql )
cSql := ""
lBegin := .T.
ENDIF
ENDIF
cnExcel:MoveNext()
ENDDO
cnExcel:CloseConnection()
IF Len( cSql ) > 0
cnMySql:ExecuteCmd( cSql )
ENDIF
cnMySql:CloseConnection()
MsgExclamation( "Fim da importação! Verificados " + LTrim( Str( nQtd ) ) + " NCMs" )
RETURN
Nenhum cliente reclamou até agora, então não tinha feito nada antes sobre isso..... rs
Nesse caso é direto do Excel para o MySql do meu site.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, 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/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, 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/
Tabela relacionada de ncms extintos em 31/03/2017
Não sei se entendi direito...
Até o momento não tive problemas de caos digamos assim.
O q tenho usado é a rotina q baixa a tabela nova e tenho uma rotina q o cliente escolhe trocar NCM de para ai informa o NCM ou produto q ele quer q troque o NCM (pode ser um NCM inválido q deixou de existir) e escolhe na tabela atualizada para qual irá trocar, com isto troca todos, ou seja, no dia a dia encontrou NCM inválido ele pode informar e já trocar todos q tem no cadastro de produtos automaticamente por outro valido, ai facilita a correção.
Tb tenho faço o seguinte, faz uma checagem no cadastro de produtos, filtrando todos os NCMs q não são mais válidos ai o cliente vai e informa para qual vai trocar (conforme acima) e pronto ele consegue arrumar facilmente sem muito trabalho.
Pq por mais q tenham por exemplo 1000 NCMs extintos suponhamos, como é por segmento, as vezes um determinado ramo tem uns 150 q por sua vez na base do cliente tem 100 q filtrando (comparando com os validos saberemos quais são inválidos) depois fazendo o cliente escolher DE -> Para tipo NCM 1993.23.42 (nem sei se tem) para 5034.42.33... trocar todos? Sim pronto akele já foi geral, e assim por diante.
Assim não resolveria?
Até o momento não tive problemas de caos digamos assim.
O q tenho usado é a rotina q baixa a tabela nova e tenho uma rotina q o cliente escolhe trocar NCM de para ai informa o NCM ou produto q ele quer q troque o NCM (pode ser um NCM inválido q deixou de existir) e escolhe na tabela atualizada para qual irá trocar, com isto troca todos, ou seja, no dia a dia encontrou NCM inválido ele pode informar e já trocar todos q tem no cadastro de produtos automaticamente por outro valido, ai facilita a correção.
Tb tenho faço o seguinte, faz uma checagem no cadastro de produtos, filtrando todos os NCMs q não são mais válidos ai o cliente vai e informa para qual vai trocar (conforme acima) e pronto ele consegue arrumar facilmente sem muito trabalho.
Pq por mais q tenham por exemplo 1000 NCMs extintos suponhamos, como é por segmento, as vezes um determinado ramo tem uns 150 q por sua vez na base do cliente tem 100 q filtrando (comparando com os validos saberemos quais são inválidos) depois fazendo o cliente escolher DE -> Para tipo NCM 1993.23.42 (nem sei se tem) para 5034.42.33... trocar todos? Sim pronto akele já foi geral, e assim por diante.
Assim não resolveria?
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
- rubens
- Colaborador

- Mensagens: 1520
- Registrado em: 16 Ago 2003 09:05
- Localização: Nova Xavantina - MT
Tabela relacionada de ncms extintos em 31/03/2017
Bom dia...
Vou fazer isso mesmo... tinha pensado nisso mas como bom brasileiro... esperava a solução mais fácil.. kkkkk
Quintas esta tabela já tenho em excel...
Já importei para o sistema.
Eu recebo um e-mail quando ocorre um erro com o envio de nfce. MAs tem usuário que judia muito... cheguei a receber 15 emails de erro com a tentativa de envio de nfce e fui ver o cliente tentando enviar a mesma nfce, sem corrigir o ncm... liguei para ele e disse que não sabia... tá bem claro na mensagem de erro que é exibida na tela...
Obrigado...
Rubens
Vou fazer isso mesmo... tinha pensado nisso mas como bom brasileiro... esperava a solução mais fácil.. kkkkk
Quintas esta tabela já tenho em excel...
Já importei para o sistema.
Eu recebo um e-mail quando ocorre um erro com o envio de nfce. MAs tem usuário que judia muito... cheguei a receber 15 emails de erro com a tentativa de envio de nfce e fui ver o cliente tentando enviar a mesma nfce, sem corrigir o ncm... liguei para ele e disse que não sabia... tá bem claro na mensagem de erro que é exibida na tela...
Obrigado...
Rubens
"Eu e minha casa servimos ao Senhor e você
"