Painel de líderes
Conteúdo popular
Showing content with the highest reputation on 29-12-2014 em Posts
-
Estamos fazendo modificações nos componentes SPED que podem resultar em necessidade de corrigirem seu código. Por isso estamos avisando com antecedência para você poder estar pronto. As alterações estão previstas para ir para o SVN na primeira quinzena de Janeiro de 2015 já estão no SVN. Há algum tempo temos um bug em certos registros do SPED que não puderam ser resolvidos. O problema é devido a alguns campos que precisam ser gerados com valores numéricos incluindo '0' (zero), mas também precisam aceitar o valor vazio ( e mais ). O componente não consegue atualmente tratar esses casos de forma satisfatória e as alterações são para corrigir isso. Infelizmente, estas alterações podem quebrar a compatibilidade do seu código atual. "Não!!! Não façam isso com meu código!!!" - disse o programador preguiçoso. Em primeiro lugar não é seu código. É nosso! Além disso, como dito acima, também não estamos tão felizes assim. Mas ou fazemos a alteração, ou não vamos atender a necessidade de todos nem a legislação atual. Preferimos qualidade e confiabilidade. "Mas o que vai mudar?" - disse o programador curioso. Resumindo a alteração: Estamos modificando o tipo destes campos para Variant ao invés de um tipo numérico (Currency, Double, extended, etc...). Assim, quando você precisar gerar um valor vazio no campo, bastará passar Null (variant nula) para o campo. Se quiser que seja gerado com '0' (zero), bastará passar zero para o campo. Sim, isso já foi e não é um dejavu. Alguns registros já funcionam assim, como por exemplo os Registros C181 e C185. "Nenhuma chance de eu não precisar fazer nada?" - disse o programador esperançoso. Se você não utilizar os registros mencionados você não vai precisar fazer nada. A lista dos registros estão no deste tópico. "E se eu não quiser mexer com isso agora?" - disse o programador apertado com os prazos. Bom, você pode ficar sem atualizar seus componentes SPED. Mas que fique claro que não recomendamos isso e que você talvez não consiga gerar os arquivos 100%. Daí você talvez pense: "Ok, eu quero resolver isso. Mas queria saber onde eu posso ter problemas, e o que fazer para corrigi-los." Achei que não ia perguntar. O caso é que os componentes não vão mais tentar adivinhar se o campo ficará vazio ou não vazio quando o valor dele for zero. Você é quem deverá definir isso. Logo, se você está sempre confiando que quando passar zero o componente vai tornar os campos vazios por você, então você pode ter problemas nestes casos. Veja um exemplo: Na EFD Contribuições (SPED PIS/COFINS), quando você gera registros C191, existem os campos VL_BC_PIS, ALIQ_PIS, QUANT_BC_PIS e ALIQ_PIS_QUANT. Normalmente, você vai preencher os dois primeiros. Ao preencher os dois primeiros você deve fazer com que os campos QUANT_BC_PIS e ALIQ_PIS_QUANT fiquem vazios. O código atual talvez seja assim: RegistroC181.VL_BC_PIS := 100; RegistroC181.ALIQ_PIS := 1.65; RegistroC181.QUANT_BC_PIS := 0; RegistroC181.ALIQ_PIS_QUANT := 0; Você vai ter que alterar para: RegistroC181.VL_BC_PIS := 100; RegistroC181.ALIQ_PIS := 1.65; RegistroC181.QUANT_BC_PIS := Null; RegistroC181.ALIQ_PIS_QUANT := Null; Mas talvez, você seja um dos que desenvolvem software para fabricantes ou importadores de combustíveis e de bebidas frias (água, cerveja, refrigerantes) que tenham optado por apurar as contribuições sociais com base na quantidade de produto vendida. Neste caso, você vai querer preencher os campos posteriores e deixar os dois primeiros vazios. Algo assim: RegistroC181.VL_BC_PIS := Null; RegistroC181.ALIQ_PIS := Null; RegistroC181.QUANT_BC_PIS := 10; RegistroC181.ALIQ_PIS_QUANT := 0.1; Isso foi apenas um exemplo. Mas, via de regra, o que você de prestar atenção é: O código gerava vazio pra você e você quer que continue assim? Então atribua Null. "Mas e os eventos? Não tinha alguns eventos para resolver esse problema?" Hmmm!!! Temos um espertinho aqui! O problema dos registros com eventos (C481, C485, C491, C495), é que o evento é gerado na hora de escrever o arquivo e não na hora de alimentar o componente. Por isso, você já não tem acesso ao banco de dados. Assim, pode ser preciso consultar novamente ao banco de dados para decidir quais campos vão ser preenchidos ou deixados vazios. Isso pode ser um problema muito grande e até insustentável dependendo do tamanho do seu banco de dados e do período gerado. Fora que são mais conexões desnecessárias ao BD. Assim, os eventos estão sendo considerados obsoletos (deprecated). Mais cedo ou mais tarde eles serão removidos. Para evitar maiores problemas, o código dos eventos a princípio vão continuar funcionando. Quer dizer que, se você está utilizando os eventos e eles estão lhe atendendo, você pode decidir não mexer nessa parte do código. Mas incentivamos você a remover os eventos e fazer os tratamentos conforme acima sugerido para os outros registros assim que as alterações forem postadas no SVN. Veja abaixo onde as modificações estão sendo feitas primeiro e analise ali se seu código precisa ser modificado. Apenas atente que isso é apenas os primeiros lugares onde vão acontecer as modificações. Mais lugares vão ser alterados sempre que percebemos que o código atual não pode atender a necessidade e legislação que afeta todos os nossos usuários. Vamos tentar manter a lista abaixo atualizada.2 pontos
-
http://www.firebirdfaq.org/faq193/ Veja o arquivo: C:\Program Files (x86)\Firebird\Firebird_2_1\doc\installation_scripted.txt2 pontos
-
Acabei de subir para o SVN modificações para compatibilizar o ACBrECF, usando o modelo "ecfBematech", com o comando de "Venda de Item Completo" da Bematech... A modificação também permitirá aos novos modelos "ECFs Virtuais", um novo método que permite a passagem mais completa de parâmetros... Isso não agrega muito valor para quem usa os componentes, pois temos o evento "QuandoVenderItem", que já permitia informar os dados adicionais... Mas será ótimo para quem usa o ACBrMonitor (assim que o mesmo for adaptado para suportar o método VendeItemEx) A assinatura do método ficou ligeiramente diferente da sugerida pela DLL da Bematech. Tentei manter os parâmetros compatíveis com o VendeItem já existente no ACBrECF, e reorganizei em grupos os parâmetros novos. Segue abaixo uma descrição do método, com algumas explicações em cada parâmetro... Procedure VendeItemEx( Codigo, Descricao : String; AliquotaICMS : String; Qtd : Double ; ValorUnitario : Double; ValorDescontoAcrescimo : Double = 0; Unidade : String = 'UN'; TipoDescontoAcrescimo : String = '%'; DescontoAcrescimo : String = 'D'; CodDepartamento: Integer = -1; EAN13: String = ''; // Código Barras do Produto (GTIN-13) CasasDecimaisQtde: Integer = 0; // Se 0 assume o valor de DecimaisQtd CasasDecimaisValor: Integer = 0; // Se 0 assume o valor de DecimaisPreco ArredondaTrunca: Char = 'A'; // Se diferente de 'A' ou 'T' assume o valor de "Arredonda" NCM: String = ''; // Código da Nomenclatura Comum do MERCOSUL CFOP: String = ''; // Código Fiscal de Operações e Prestações InformacaoAdicional: String = '';// Texto Livro, até 500 caracteres TotalDosTributos: Double = 0; // Valor da lei "De olho no Imposto) OrigemProduto: Integer = 0; // 0–Nacional; 1–Estrangeira Import.direta; 2–Estrangeira–Mercado interno CST_ICMS: String = ''; // ICMS: Código de Situação Tributária ModalidadeBCICMS: Integer = 0; // ICMS: Modalidade Base de Calculo: 0 – Margem do valor agregado (%) // 1 – Pauta (Valor) // 2 – Preço tabelado máx. (Valor) // 3 – Valor da operação PercentualReducaoBCICMS: Double = 0; // ICMS: CSOSN: String = ''; // Simples Nacional: Código de Situação da Operação ValorBaseCalculoSN: Double = 0; // Simples Nacional: Base de Calculo ValorICMSRetidoSN: Double = 0; // Simples Nacional: Valor Retido para ICMS AliquotaCalculoCreditoSN: Double = 0;// Simples Nacional: ValorCreditoICMSSN: Double = 0; // Simples Nacional: ItemListaServico: String = ''; // Serviço apenas: código do serviço prestado: lista de serviços anexa à Lei Complementar nº 116, CodigoISS: String = ''; // Serviço apenas: Código do Imposto Sobre Serviço NaturezaOperacaoISS: String = '';// Serviço apenas: com os seguintes valores possíveis: '00' até '08', IndicadorIncentivoFiscalISS: Integer = 1; // Serviço apenas: para indicar se o estado é participante ou não da (Lei do Incentivo Fiscal – ISS), valores: 1 (participante) ou 2 (não participante) CodigoIBGE: String = ''; // Serviço apenas: Código do município ModalidadeBCICMSST: Integer = 0; // ICMS ST: Modalidade Base de Calculo, 0 – Preço tabelado ou máximo sugerido // Substituição Tributária 1 – Lista negativa (valor) // 2 – Lista positiva (valor) // 3 – Lista neutra (valor) // 4 – Margem do valor agregado (%) // 5 – Pauta (valor) PercentualMargemICMSST: Double = 0; // ICMS ST: PercentualReducaoBCICMSST: Double = 0; // ICMS ST: ValorReducaoBCICMSST: Double = 0; // ICMS ST: AliquotaICMSST: Double = 0; // ICMS ST: ValorICMSST: Double = 0; // ICMS ST: ValorICMSDesonerado: Double = 0; MotivoDesoneracaoICMS: Integer = 9); // 3 – Uso na agropecuária; 9 – Outros; 12 – Órgão de fomento e desenvolvimento agropecuário Informações sobre a plataforma Fiscal da Bematech em: http://www.bematech.com.br/PlataformaFiscal1 ponto
-
A Escrituração Contábil Fiscal (ECF) é uma nova obrigação imposta às pessoas jurídicas estabelecidas no Brasil. O sujeito passivo deverá informar, na ECF, todas as operações que influenciem a composição da base de cálculo e o valor devido do Imposto sobre a Renda da Pessoa Jurídica (IRPJ) e da Contribuição Social sobre o Lucro Líquido (CSLL). A nova Escrituração Contábil Fiscal Digital do Imposto sobre a Renda e da Contribuição Social sobre o Lucro Líquido da Pessoa Jurídica, foi publicada a partir da Instrução Normativa nº 1.422 e Ato Declaratório Executivo Cofis nº 098/2013, que disponibilizou o Manual de Orientação do Leiaute da ECF com informações relevantes sobre o preenchimento da nova escrituração. Quem deve se preparar : São obrigadas ao preenchimento da ECF todas as pessoas jurídicas, inclusive imunes e isentas, sejam elas tributadas pelo lucro real, lucro arbitrado ou lucro presumido, exceto: I - as pessoas jurídicas optantes pelo Regime Especial Unificado de Arrecadação de Tributos e Contribuições devidos pelas Microempresas e Empresas de Pequeno Porte (Simples Nacional), de que trata a Lei Complementar no 123, de 14 de dezembro de 2006; II - aos órgãos públicos, as autarquias e as fundações públicas; e III - as pessoas jurídicas inativas de que trata a Instrução Normativa RFB no 1.306, de 27 de dezembro de 2012. Há que se ressaltar que, caso a pessoa jurídica tenha Sociedades em Conta de Participação (SCP), cada SCP deverá preencher e transmitir sua própria ECF, utilizando o CNPJ da pessoa jurídica que é sócia ostensiva e um código criado pela própria pessoa jurídica para identificação de cada SCP de forma unívoca. Quando: A ECF será transmitida a partir de 2014 anualmente ao Sistema Público de Escrituração Digital (Sped) até o último dia útil do mês de julho do ano seguinte ao ano-calendário a que se refira. Em julho de 2015 deverá ser entregue em relação aos fatos ocorridos a partir de 1º de janeiro de 2014. Obrigações dispensadas: • Livro de Apuração do Lucro Real (LALUR); • Declaração de Informações Econômico-Fiscais da Pessoa Jurídica (DIPJ). Penalidades: • Por atraso: R$ 500,00 ou 1.500,00 por mês calendário/fração; • Por não apresentação: R$1.000,00 por mês calendário/fração; • Por informação incorreta: 0,2% faturamento. Impactos da Obrigação: • Necessário revisão das contas contábeis versus o plano de contas referencial da Receita Federal; • Utilização de centro de custo ganha nova relevância; • Revisão das contas de custos; • E- LALUR: Lançamentos da parte A – Indicação das contas contábeis; • Utilização de saldo parcial da conta contábil; • Informação do número do lançamento contábil da ECD; • Fim dos controles em planilha (extra contábeis); • Apresentação dos cálculos de Transfer Price, produto a produto. Fonte: http://www.gsw.com.br/pt/solucao/gestao-tributaria/mastersaf/onesource-ecf?gclid=Cj0KEQjwhLCgBRCf0fPH043IlJwBEiQAf8P8UxrI_3U-iFZq5sWYzsM3ekyn6qUutzn3wyuFNvY6DR4aApyt8P8HAQ Obs: O trabalho por parte da equipe ACBr começou, assim que tiver algo concreto estará no repositório.1 ponto
-
Pessoal, fiz algumas alterações para imprimir os eventos, tanto cancelamento quanto carta de correção (FastReport). Se julgarem as alterações válidas, favor atualizar svn. Obrigado!!! CteEventos.zip1 ponto
-
1 ponto
-
Boa tarde. Entendi, ok. Para fazer os meus testes aqui com o delphi xe7, vou deixar alterado, mas assim que estiver ok, desfaço o que alterei. Posso colocar o post como resolvido, ou deixa em aberto. Obrigado.1 ponto
-
1 ponto
-
Bom dia Heronim, Infelizmente não tive tempo ainda de analisar e realizar o merge, final de ano tumultuado.1 ponto
-
Olá, foi necessário efetuar um pequeno ajuste na Unit ACBrSEF2, porque estava gerando duplicidade nos registro RegistroH020 e RegistroH030 quando informado o Registro de Inventário - RI. Ajuste: de procedure TACBrSEF2.WriteBloco_H; begin WriteRegistroH001; WriteRegistroH990; Bloco_H.WriteBuffer; Bloco_H.Gravado := True; end; Para procedure TACBrSEF2.WriteBloco_H; begin if Bloco_H.Gravado then Exit; WriteRegistroH001; WriteRegistroH990; Bloco_H.WriteBuffer; Bloco_H.Conteudo.Clear; Bloco_H.Gravado := True; end; Segue anexo a Unit com a alteração! ACBrSEF2.pas1 ponto
-
Ítalo.. Contatei o pessoal da Digifred e eles estavam como Ws desabilitado la.. é mole !! ??? Agora ta aprovando em até um minuto... Me desculpe o transtorno e as dúvidas básicas que postei aqui, pois não tinha nenhuma idéia de como funcionava NFSe, agora, já tenho alguma... ehehe Obrigado pela paciência !1 ponto