Ir para conteúdo
  • Cadastre-se

Atenas Soluções Softwares

Membros Pro
  • Total de ítens

    601
  • Registro em

  • Última visita

  • Days Won

    8

Tudo que Atenas Soluções Softwares postou

  1. Tinha criado esse demo teste logo quando tive que implementar , ve se ajuda ai brother !
  2. As balanças de qualquer marca tanto serial quanto TCP , comunicam-se com o próprio Software do fabricante Exemplo : Toledo=MGV , Filizola=Smart e assim por diante , o seu Aplicativo somente ira criar um TXT com o devido layout do fabricante e enviar no diretório setado do Aplicativo do Fabricante e o mesmo importa o seu arquivo TXT e manda para as balanças .
  3. No meu caso utilizo no ini um parametro "ECF_Trunca" que se verdadeiro Trunca se não Arredonda .
  4. Atualizei o componente hj , eu tinha alterado a unit pcnNFeW (procedure TNFeW.GerarDest;) para poder estar enviando para CNPJ's / IE's validos em homologação para poder estar testando a manifestação , não sei para outras Uf's , mas para SP a unit modificada que segue em anexo funciona normal para CNPJ's / IE's validos em homologação , pois a Sefaz esta testando somente a validação da Razão Social = 'NF-E EMITIDA EM AMBIENTE DE HOMOLOGACAO - SEM VALOR FISCAL' e não Cnpj e Ie , gostaria de saber se outras UF's estão com restrição para Cnpj e Ie validos , senão estiver , o bacana era manter esta unit anexada em definitivo para que todas as vezes que atualizar não ter que ficar alterando novamente ! oque acham ?
  5. A busca é do formato seu desejado , mas só pra lembrar a quem ainda não leu a NT2012_002 , só não esquecer que de acordo com a pagina 17 = "4.10.9 Recomendações para evitar o uso indevido" as novas regras de Aplicativos com timers ocupando o WS a todo momento vai começar a pegar com 641–Rejeição: Consumo Indevido”.
  6. Fabio , se vc não resolveu ainda , essa rotina aqui acredito que resolva seu problema ! testei um Random com 10 mil códigos e o ACBrValidador validou todos os códigos gerados em varios testes que fiz .
  7. Fabio , a função de teste que calcula EAN8 que postei esta incorreta como a sua ! , conhecidiu da que postei retornar o mesmo valor que a sua , na verdade '0000020' tem o digito verificador = 8 e não 4 , por isso que o ACBrValidador estava retornando False , me equivoquei com aquela função que para EAN13 esta correta mas para EAN8 não , retorne o fonte anterior do ACBrValidador.pas que esta correto , e modifique a função abaixo para que result em string pro seu uso e não boolean , testei varios codigos com esta função e deu certo , foi de grande valia o link do post que o André informou para que possamos testar esses GTIN's ! Obrigado Andre e Regys . Function Valida_EAN(vEan: String): Boolean ; var Temp1, Temp2, Digito: Integer; Temp3, Temp4: String; begin Result := False; Temp2 := 0; Temp3 := ''; if ((Length(vEan) <> 8) and (Length(vEan) <> 12) and (Length(vEan) <> 13) and (Length(vEan) <> 18)) then Exit; Temp4 := '31313131313131313'; Temp4 := Copy(Temp4,(Length(Temp4)-Length(vEan)),Length(vEan)-1); Digito := StrToInt(Copy(vEan,Length(vEan),1)); Temp3 := Copy(vEan,1,Length(vEan)-1); for Temp1 := 1 to Length(Temp3) do Temp2 := Temp2+StrToInt(Temp3[Temp1])*StrToInt(Temp4[Temp1]); Temp2:=10-Round(Frac(Temp2/10)*10); if Temp2 = 10 then Temp2 := 0 ; Result := (Temp2 = Digito); end;
  8. O André tem razão , a função abaixo esta validando com o digito 8 e não 4 para o código '0000020' !!! function Valida_EAN(vEan: String): Boolean ; var Temp1, Temp2, Digito: Integer; Temp3, Temp4: String; begin Result := False; Temp2 := 0; Temp3 := ''; if ((Length(vEan) <> 8) and (Length(vEan) <> 12) and (Length(vEan) <> 13) and (Length(vEan) <> 18)) then Exit; Temp4 := '31313131313131313'; Temp4 := Copy(Temp4,(Length(Temp4)-Length(vEan)),Length(vEan)-1); Digito := StrToInt(Copy(vEan,Length(vEan),1)); Temp3 := Copy(vEan,1,Length(vEan)-1); for Temp1 := 1 to Length(Temp3) do Temp2 := Temp2+StrToInt(Temp3[Temp1])*StrToInt(Temp4[Temp1]); Temp2:=10-Round(Frac(Temp2/10)*10); if Temp2 = 10 then Temp2 := 0 ; Result := (Temp2 = Digito); end;
  9. Fabio , só pra ter uma idéia baseando no que o Regis disse que modificou o componente a quase 1 ano . Gostaria de saber quando vc atualizou seu ACBr pela última vez ?
  10. Só complementando o que o Amigo Jose Silva disse : Não esquecer que a númeração quando Retorno da Sefaz por motivo Uso Denegado = "110 - Uso Denegado" , "301 - Uso Denegado : Irregularidade fiscal do emitente" e "302 - Uso Denegado : Irregularidade fiscal do destinatário" , não poderão serem Reaproveitados , Cancelados ou Inutilizados essa Númeração de NFe's !
  11. OBRIGATORIEDADE : A utilização da Carta de Correção Eletrônica é obrigatória a partir de 01.07.2012, não sendo mais admitido o uso da carta de correção convencional (em papel) a partir desta data, para a correção de Notas Fiscais Eletrônicas, modelo 55. A obrigatoriedade está prevista no § 7º da cláusula décima quarta-A do Ajuste SINIEF nº 07/2005. FINALIDADE : Para corrigir documentos fiscais, há regras claras definidas pelo Ajuste SINIEF nº 01/2007, sendo que estas regras continuam sendo válidas, e indicam o que pode e o que não pode ser corrigido através de Carta de Correção. Não poderão ser sanados erros relacionados: - às variáveis consideradas no cálculo do valor do imposto, tais como: valor da operação ou da prestação, base de cálculo e alíquota (para estes casos deverá ser utilizada NF-e Complementar); - a dados cadastrais que impliquem alteração na identidade ou no endereço de localização do remetente ou do destinatário; - à data de emissão da NF-e ou à data de saída da mercadoria.
  12. Allan , sua AC deve informar o valor a ser pago antes de iniciar a transação e após a confirmação da transação no evento OnDepoisConfirmarTransacoes , vc tem o retorno se confirmou ou não . Detalhe : O TEF não te retorna Saldos , nem de Crédito nem de Débito !!!
  13. Verissimo , pra mim também está assim em produção .
  14. Elvis , A NFe emitida ou recebida pelo Declarante , com a finalidade de Ajuste (NF-e de ajuste), até o presente momento, deve ser informada no Registro C100 da EFD com o código 08 da situação do documento fiscal, no seu campo 06 = COD_SIT , conforme Tabela 4.1.2 . Tabela 4.1.2 : 00 Documento regular 01 Documento regular extemporâneo 02 Documento cancelado 03 Documento cancelado extemporâneo 04 NFe denegada 05 Nfe – Numeração inutilizada 06 Documento Fiscal Complementar 07 Documento Fiscal Complementar extemporâneo. 08 Documento Fiscal emitido com base em Regime Especial ou Norma Específica Como vc pode ver existe tambem o código 06 e 07 para Documentos Complementares .
  15. Sandro , ja existe um tópico falando sobre este assunto , mas no caso substitue o arquivo pcnNFeW.pas em anexo que e teste novamente o seu envio da NFe primeiramente ! e após vc faz novamente a carta de correção do novo envio ! ...para te ajudar esta em Sua_Pasta_ACBr\Fontes\PCN2 ...Tópico onde falam sobre este assunto : viewtopic.php?f=6&t=5224&start=230
  16. Olá Angelo,achei o que seria refente ao ACBR.Configuracoes.Certificados.DataVenc porém ele só me retorna 30/12/1899 Olá Igor,eu preciso fazer isso com o Capicom,creio que o processo não seria o mesmo,seria? Grato Pedro , faz assim ó : ACBrNFe1.Configuracoes.Certificados.NumeroSerie := Numero_De_Serie_do_Certificado_Digital_Desejado ; ACBrNFe1.Configuracoes.Certificados.GetCertificado ; Dt_Validade := DateToStr(ACBrNFe1.Configuracoes.Certificados.DataVenc); Obs : Dt_Validade = Variavel do tipo String ; Utilizo muito isso , pois tenho Clientes que emitem NFe de matriz e filiais em um só ambiente de faturamento , nesse caso , precisamos estar selecionando o certificado do emitente desejado antes de iniciar envio ! Até .
  17. O estranho é que vc diz funcionar nas demais lojas e a Sweda não mudou nada !!! ...Tive um problema intermitente parecido com o seu , hora funcionada e hora parava de funcionar , que no meu caso foi porta Serial , colocamos uma MultiSerial e terminaram meus problemas !!!
  18. Parametros são as Propriedades do ACBrECF , veja como vc pode fazer em Duas partes o modo de tratamento com este seu form filho : 1-No evento ONCreate do formfilho vc vai deixar somente a programação para Ativar o ACBrECF , sendo que vc precisara dele ativado no seu form Principal : ACBrECF1.IntervaloAposComando := .... ; ACBrECF1.MaxLinhasBuffer:= .... ; ACBrECF1....propriedade tal ACBrECF1....propriedade tal ACBrECF1.Ativar ; 2-No evento ONShow do formfilho vc coloca o restante da programação desejada de que vc vai usar somente quando for mostrar o FormFilho . Carrega_Suas_Classes ; Tratamento_Banco_Dados ; etc..etc ; 3-Para usar no Form Principal : formfilho.ACBrECF1.... Algumas considerações importantes : * Verifique se vc não tem nenhum timer ativado no formfilho ! * Não de mais formfilho.free , porque nesse caso vc destroi ele para utiliza-lo no form Principal , deixe ele criado sempre .
  19. Paulinho , 1 - Quando vc faz = formfilho:=tformfilho.create(self) , o formfilho executa o evento oncreate dele , coloque um break point no oncreate do formfilho pra vc ver onde esta dando este erro , 2 - Referente aos parametros do ACBrECF , antes de ativalo vc tem que iniciar seus parametros , ja que caso vc va destriuir com o formfilho.free . ...acho que vc vai ter que trocar alguns comandos que estão no oncreate do formfilho para o onshow , ou seja , no oncreate vc pode somente parametrizar e ativar o ACBrECF e somente quando dar o show ou showmodal , vc faz o resto , entende ? Mas vamos vendo até vc conseguir ... ...Tem um Detalhe quando formfilho:=tformfilho.create(self) , o formfilho não pode estar criado , ou seja , tem que estar como Available Form em Project/Options/Forms...
  20. se entendi direito , vc quer utilizar o form fiho no principal . em alguma rotina do seu form principal = form pai ... try formfilho:=Tformfilho.create(self) ; formfilho.iniciar parametros do ACBrECF e ativalo . formfilho.acbrecf1.fazalgo... formfilho.acbrecf1.faz + algo... formfilho...... // não precisa show ou showmodal , ou seja , efetua comandos sem chama-lo . finally formfilho.free ; end; espero que ajude .
  21. Coloquei aqui direto no link onde ja perguntaram esta questão , mas no caso leia desde o inicio do topico : viewtopic.php?f=16&t=6677&start=50
  22. Tambem acho isso , só que a manutenção para as Concatenações do Arquivo gerado de Retorno é móle , ja que as chamadas são separadas para cada Estado , certo ?
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...
The popup will be closed in 10 segundos...