Página 4 de 4

Tabela de NCM com o CEST correspondente.

Enviado: 26 Jun 2017 20:55
por JoséQuintas
Gostei dessa "brincadeira".

Estou alterando outras tabelas para um mesmo formato.

FOR EACH oElement IN ze_TabCest()
FOR EACH oElement IN ze_TabUf()
FOR EACH oElement IN ze_TabCidade()
FOR EACH oElement IN ze_TabCfOp()

E por aí vai...

Talvez até uma LIB com todas as tabelas, e fica menos fonte pra compilar.
Ou DLL, ou HRB, ou resource, ou alguma opção diferente.

De qualquer jeito, já tenho no próprio EXE, pra atualizar fácil nos clientes.
Apenas estou separando em módulos, e trocando as rotinas por FOR/EACH igual acima.
O que vou fazer depois, ainda não sei.
O EXE, por usar mingw, está com 2.5MB, nem sei se compensa inventar algo diferente.
Quando se usam imagens em resource fica muito maior que isso.

Tabela de NCM com o CEST correspondente.

Enviado: 26 Jun 2017 21:40
por JoséQuintas
Chega até a ser esquisito, porque as tabelas continuam as mesmas, mas o EXE diminuiu em quase 13.000 bytes.

Como político gosta de tabelas.... só algumas

Código: Selecionar todos

26/06/2017  20:11           217.782 ze_tabcest.prg
26/06/2017  20:24            47.345 ze_tabcfop.prg
26/06/2017  20:21           317.012 ze_tabcidade.prg
26/06/2017  21:05           136.246 ze_tabcnae.prg
26/06/2017  21:18             1.359 ze_tabicmcst.prg
26/06/2017  21:29               817 ze_tabipicst.prg
26/06/2017  21:13             9.973 ze_tabpisenq.prg
26/06/2017  20:11             1.354 ze_tabuf.prg
A do CEST, coloquei um parâmetro .T. ou .F., se retorna ou não o porta a porta.

Tabela de NCM com o CEST correspondente.

Enviado: 29 Jun 2017 07:59
por Jairo Maia
José, não sou político, mas se você disponibilizar eu me interesso por tabelas e a culpa é deles: políticos... rs...

Tabela de NCM com o CEST correspondente.

Enviado: 29 Jun 2017 12:15
por JoséQuintas
Estou pensando em aproveitar e criar uma ou duas libs josequintas.... rs
uma só pra coisas do Brasil.
Temos validação de CPF, CNPJ, Inscrição Estadual, carteira de habilitação, documento de veículos, tabelas, CEP, etc.
É tanta coisa, que justifica uma lib só para o Brasil.
E outra para o que não é exclusivo do Brasil: PDF, XML e outros.
Nessa hora dá pra ver como o Brasil complica..... rs

Tabela de NCM com o CEST correspondente.

Enviado: 05 Jul 2017 15:55
por JoséQuintas
cest.png

Tabela de NCM com o CEST correspondente.

Enviado: 25 Set 2017 15:10
por JoséQuintas
Fui implementar essa tabela no aplicativo, e é meio complicado.
Alguns códigos CEST não tem NCM fixo, então poderia aceitar qualquer NCM, complicado isso.... rs
Seriam os que estão com XXXXXXX no código do NCM.
cest.png

Tabela de NCM com o CEST correspondente.

Enviado: 25 Set 2017 15:14
por JoséQuintas
Já eliminando os XXXXXXX, melhorou mas...
cest2.png

Apesar do produto de limpeza parecer fora da lista, tá na lista do governo, grupo que começa com 27:
{ "0600600", "2710192X", "OLEO DIESEL A, EXCETO S10 E MARITIMO" }, ;
{ "0600601", "2710192X", "OLEO DIESEL B, EXCETO S10 (MISTURA OBRIGATORIA)" }, ;
{ "0600602", "2710192X", "OLEO DIESEL B, EXCETO S10 (MISTURAS AUTORIZATIVAS)" }, ;
{ "0600603", "2710192X", "OLEO DIESEL B, EXCETO S10 (MISTURAS EXPERIMENTAIS)" }, ;
{ "0600604", "2710192X", "OLEO DIESEL A S10" }, ;
{ "0600605", "2710192X", "OLEO DIESEL B S10 (MISTURA OBRIGATORIA)" }, ;
{ "0600606", "2710192X", "OLEO DIESEL B S10 (MISTURAS AUTORIZATIVAS)" }, ;
{ "0600607", "2710192X", "OLEO DIESEL B S10 (MISTURAS EXPERIMENTAIS)" }, ;
{ "0600608", "2710192X", "OLEO DIESEL MARITIMO" }, ;
{ "0600609", "2710192X", "OUTROS OLEOS COMBUSTIVEIS" }, ;
{ "0600610", "2710192X", "OLEO COMBUSTIVEL DERIVADO DE XISTO" }, ;
{ "2806300", "27XXXXXX", "PRODUTOS DE LIMPEZA E CONSERVACAO DOMESTICA" }, ;
Muito esquisito isso.

Tabela de NCM com o CEST correspondente.

Enviado: 25 Set 2017 18:09
por JoséQuintas
Acabei deixando com validação, mas com opção do usuário confirmar ou não.... vai saber... rs

Pra quem usa GTWVG, ou console, é só colocar nos gets...

Código: Selecionar todos

@ 1, 0 SAY "NCM" GET cNcm PICTURE "@K 9999999" Valid ValidNcm( @cNcm )
@ 2, 0 SAY "CEST" GET cCest PICTURE "@K 9999999" VALID ValidCest( @cCest, @cNcm )

Tabela de NCM com o CEST correspondente.

Enviado: 25 Set 2017 18:19
por JoséQuintas
Pois é... esqueci que os tempos mudaram....

Não basta validar no cadastro, tem que validar na confirmação do pedido e/ou antes de emitir a nota....