Fórum Problema de imposto - CST #408609
19/10/2011
0
Estou com problemas com relação ao CST - Codigo de situação tributária.
Eu não estou sabendo onde é melhor gravar este campo.
Primeiramente eu gravei no cadastro do produto.
Depois vi, que no mesmo produto posso ter 2 CSTs diferentes um para dentro do UF e outro para FORA da uf
Ex. 000 fora da UF e 020 PARA DENTRO da UF
Agora tem um cliente meu, que mesmo dentro da UF ele pode usar 2 CSTs diferentes.
Um quando o cliente dele, tiver redução 020 e outro quando não tiver 000
Tenho uma tabela de CFOPS pensei em colocar lá, será que é ideal?
Como é que vcs estão, que trabalhao com NF estão tratando este problema?
Hoje tenho as seguintes tabelas:
Cadastro de produto - onde cadastrei os CST
Cadastro de UF - Onde defino se tem ICMS, se tem redução,
Cadastro de CFOP - Onde penso em colocar os CST
Cadastro do cliente - Onde coloco se o cliente tem ICMS diferente do que está definido para o UF
Desde já agradeço a todos,
Atenciosamente,
Dirceu Morais
Dirceu Morais
Curtir tópico
+ 0Posts
19/10/2011
Geversom Sousa
espero ter ajudado.
Abraço
Gostei + 0
19/10/2011
Ricardo Rodrigues
espero ter dado uma luz.
Gostei + 0
20/10/2011
Vagner Almeida
ClassFiscal - (classfiscal)
Operacoes e Impostos - (opimpostos)
Natureza operacao - (natop)
************** ClassFiscal **************
CREATE TABLE `classfiscal` (
`codigo` int(11) NOT NULL DEFAULT 0 COMMENT codigo corrente da tabela,
`codimp` char(3) DEFAULT NULL COMMENT codigo da impressora,
`descricao` varchar(20) DEFAULT NULL COMMENT descricao da classificacao fiscal,
`aliqest` decimal(6,2) DEFAULT NULL COMMENT aliquota estadual,
`aliqint` decimal(6,2) DEFAULT NULL COMMENT aliquota interestadual,
`reducaoest` decimal(6,2) DEFAULT NULL COMMENT reducao estadual,
`reducaoint` decimal(6,2) DEFAULT NULL COMMENT reducao interestadual,
`cst` char(2) DEFAULT NULL COMMENT codigo da situacao tributaria,
`modbascalst` char(1) DEFAULT NULL COMMENT modalidade base calculo icms st,
`modbascal` char(1) DEFAULT NULL COMMENT modalidade base calculo,
`origem` char(1) DEFAULT NULL COMMENT origem da mercadoria,
`tipo` char(1) DEFAULT NULL COMMENT T - ICMS\nS - ISS,
PRIMARY KEY (`codigo`),
UNIQUE KEY `clf_codigo_UNIQUE` (`codigo`)
)
************** Operaoes e Impostos **************
CREATE TABLE `opimpostos` (
`classfiscal` int(11) NOT NULL COMMENT codigo da classificacao fiscal,
`natop` int(11) NOT NULL COMMENT codigo do cfop,
`cfopest` char(5) NOT NULL COMMENT cfop estadual,
`cfopint` char(5) NOT NULL COMMENT cfop interestadual,
`pis` char(2) DEFAULT NULL COMMENT codigo do pis,
`pisaliq` decimal(6,2) DEFAULT NULL COMMENT valor da aliquota do pis,
`pispauta` decimal(6,2) DEFAULT NULL COMMENT valor da pauta do pis,
`pisreducao` decimal(6,2) DEFAULT NULL COMMENT valor da reducao do pis,
`pistva` decimal(6,2) DEFAULT NULL COMMENT valor do tva do pis,
`cofins` char(2) DEFAULT NULL COMMENT codigo do cofins,
`cofinsaliq` decimal(6,2) DEFAULT NULL COMMENT valor da aliquota do cofins,
`cofinspauta` decimal(6,2) DEFAULT NULL COMMENT valor da pauta do cofins,
`cofinsreducao` decimal(6,2) DEFAULT NULL COMMENT valor da reducao do cofins,
`cofinstva` decimal(6,2) DEFAULT NULL COMMENT valor do tva do cofins,
`ipi` char(2) DEFAULT NULL COMMENT codigo do ipi,
`ipialiq` decimal(6,2) DEFAULT NULL COMMENT valor da aliquota do ipi,
`ipipauta` decimal(6,2) DEFAULT NULL COMMENT valor da pauta do ipi,
`ipireducao` decimal(6,2) DEFAULT NULL COMMENT valor da reducao do ipi,
`ipitva` decimal(6,2) DEFAULT NULL COMMENT valor do tva do ipi,
`ipirfb` varchar(6) DEFAULT NULL COMMENT valor do rfb do ipi,
PRIMARY KEY (`classfiscal`,`natop`),
KEY `fk_opimpostos_cfop1` (`natop`),
CONSTRAINT `fk_opimpostos_cfop1` FOREIGN KEY (`natop`) REFERENCES `natop` (`codigo`) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `fk_opimpostos_classfiscal1` FOREIGN KEY (`classfiscal`) REFERENCES `classfiscal` (`codigo`) ON DELETE NO ACTION ON UPDATE NO ACTION
)
************** Natureza da Operacao **************
CREATE TABLE `natop` (
`codigo` int(11) NOT NULL DEFAULT 0 COMMENT codigo corretne da tabela,
`cfopest` char(5) DEFAULT NULL COMMENT codigo cfop estadual,
`cfopint` char(5) DEFAULT NULL COMMENT codigo cfop interestadual,
`descricao` varchar(150) DEFAULT NULL COMMENT descricao detalhada do cfop,
`natop` varchar(30) DEFAULT NULL COMMENT descricao da natureza da operacao,
PRIMARY KEY (`codigo`),
UNIQUE KEY `ope_codigo_UNIQUE` (`codigo`)
)
Como funciona:
Para a Tab ClassFiscal você cria um form. onde será cadastrado os tipos, variedades de CST e suas alíquotas, tanto(a)s quanto for usar.
Para a Tab NatOp voce também irá criar um form. onde será cadastrado as naturezas de operação e seus respectivos CFOPs.
Agora onde tudo faz sentido é aqui, na Tab Operações e Impostos, voce irá criar um form onde irá vincular o produto para cada Natureza de Operacao e CADA NATUREZA DE OPERACAO POSSUI UMA CLASSIFICACAO FISCAL COM SUA CONFIGURAÇÃO ESPECIFICA.
Então dessa forma, quando voce for pegar os dados dos impostos de um produto, irá sempre procurar na Tab OPIMPOSTOS, se o produto não estiver lá com a devida natureza de operaçao é porque o produto não foi configurado praquela NAtOP.
Espero ter ajudado....
Gostei + 0
21/10/2011
Dirceu Morais
ClassFiscal - (classfiscal)
Operacoes e Impostos - (opimpostos)
Natureza operacao - (natop)
************** ClassFiscal **************
CREATE TABLE `classfiscal` (
`codigo` int(11) NOT NULL DEFAULT 0 COMMENT codigo corrente da tabela,
`codimp` char(3) DEFAULT NULL COMMENT codigo da impressora,
`descricao` varchar(20) DEFAULT NULL COMMENT descricao da classificacao fiscal,
`aliqest` decimal(6,2) DEFAULT NULL COMMENT aliquota estadual,
`aliqint` decimal(6,2) DEFAULT NULL COMMENT aliquota interestadual,
`reducaoest` decimal(6,2) DEFAULT NULL COMMENT reducao estadual,
`reducaoint` decimal(6,2) DEFAULT NULL COMMENT reducao interestadual,
`cst` char(2) DEFAULT NULL COMMENT codigo da situacao tributaria,
`modbascalst` char(1) DEFAULT NULL COMMENT modalidade base calculo icms st,
`modbascal` char(1) DEFAULT NULL COMMENT modalidade base calculo,
`origem` char(1) DEFAULT NULL COMMENT origem da mercadoria,
`tipo` char(1) DEFAULT NULL COMMENT T - ICMS\nS - ISS,
PRIMARY KEY (`codigo`),
UNIQUE KEY `clf_codigo_UNIQUE` (`codigo`)
)
************** Operaoes e Impostos **************
CREATE TABLE `opimpostos` (
`classfiscal` int(11) NOT NULL COMMENT codigo da classificacao fiscal,
`natop` int(11) NOT NULL COMMENT codigo do cfop,
`cfopest` char(5) NOT NULL COMMENT cfop estadual,
`cfopint` char(5) NOT NULL COMMENT cfop interestadual,
`pis` char(2) DEFAULT NULL COMMENT codigo do pis,
`pisaliq` decimal(6,2) DEFAULT NULL COMMENT valor da aliquota do pis,
`pispauta` decimal(6,2) DEFAULT NULL COMMENT valor da pauta do pis,
`pisreducao` decimal(6,2) DEFAULT NULL COMMENT valor da reducao do pis,
`pistva` decimal(6,2) DEFAULT NULL COMMENT valor do tva do pis,
`cofins` char(2) DEFAULT NULL COMMENT codigo do cofins,
`cofinsaliq` decimal(6,2) DEFAULT NULL COMMENT valor da aliquota do cofins,
`cofinspauta` decimal(6,2) DEFAULT NULL COMMENT valor da pauta do cofins,
`cofinsreducao` decimal(6,2) DEFAULT NULL COMMENT valor da reducao do cofins,
`cofinstva` decimal(6,2) DEFAULT NULL COMMENT valor do tva do cofins,
`ipi` char(2) DEFAULT NULL COMMENT codigo do ipi,
`ipialiq` decimal(6,2) DEFAULT NULL COMMENT valor da aliquota do ipi,
`ipipauta` decimal(6,2) DEFAULT NULL COMMENT valor da pauta do ipi,
`ipireducao` decimal(6,2) DEFAULT NULL COMMENT valor da reducao do ipi,
`ipitva` decimal(6,2) DEFAULT NULL COMMENT valor do tva do ipi,
`ipirfb` varchar(6) DEFAULT NULL COMMENT valor do rfb do ipi,
PRIMARY KEY (`classfiscal`,`natop`),
KEY `fk_opimpostos_cfop1` (`natop`),
CONSTRAINT `fk_opimpostos_cfop1` FOREIGN KEY (`natop`) REFERENCES `natop` (`codigo`) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `fk_opimpostos_classfiscal1` FOREIGN KEY (`classfiscal`) REFERENCES `classfiscal` (`codigo`) ON DELETE NO ACTION ON UPDATE NO ACTION
)
************** Natureza da Operacao **************
CREATE TABLE `natop` (
`codigo` int(11) NOT NULL DEFAULT 0 COMMENT codigo corretne da tabela,
`cfopest` char(5) DEFAULT NULL COMMENT codigo cfop estadual,
`cfopint` char(5) DEFAULT NULL COMMENT codigo cfop interestadual,
`descricao` varchar(150) DEFAULT NULL COMMENT descricao detalhada do cfop,
`natop` varchar(30) DEFAULT NULL COMMENT descricao da natureza da operacao,
PRIMARY KEY (`codigo`),
UNIQUE KEY `ope_codigo_UNIQUE` (`codigo`)
)
Como funciona:
Para a Tab ClassFiscal você cria um form. onde será cadastrado os tipos, variedades de CST e suas alíquotas, tanto(a)s quanto for usar.
Para a Tab NatOp voce também irá criar um form. onde será cadastrado as naturezas de operação e seus respectivos CFOPs.
Agora onde tudo faz sentido é aqui, na Tab Operações e Impostos, voce irá criar um form onde irá vincular o produto para cada Natureza de Operacao e CADA NATUREZA DE OPERACAO POSSUI UMA CLASSIFICACAO FISCAL COM SUA CONFIGURAÇÃO ESPECIFICA.
Então dessa forma, quando voce for pegar os dados dos impostos de um produto, irá sempre procurar na Tab OPIMPOSTOS, se o produto não estiver lá com a devida natureza de operaçao é porque o produto não foi configurado praquela NAtOP.
Espero ter ajudado....
Hum,
Tô quase entendendo Wagner.
No cadastro de produto vou vincula-lo com a natureza de operação?
Minha dúvida continua, porque um mesmo produto pode ter, SITUAÇÕES DIFERENTES, no mesmo UF.
Gostei + 0
25/10/2011
Emerson Nascimento
Gostei + 0
23/02/2012
Andre Homa
pelo menos até agora n tive reclamação...
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)