PROJETO S@T-FISCAL
Chegou na sexta feira(10/07/2015), fui mexer nele só no sábado após o almoço.
As 22:00(do mesmo sábado) já estava conseguindo enviar vendas e executar as principais funções disponÃvel.(A dll me deu um baile, mas consegui)
Criei um um projeto de teste para obter conhecimentos sobre a DLL.
Agora somente preciso gerar o XML de Venda e Cancelamento e me preparar para colocar em produção.
Como eu havia previsto lá no começo desse tópico(paginas inicias) é mamão com mel.
Um único problema é a Bematech não ter material disponÃvel a não ser um arquivo de ajuda que apenas diz os campos e os tipos de dados de cada função.
Nem um projeto de exemplo nem nada....
Vou mandar o meu projeto teste para eles heheheheheheeh.....
Na atual circunstância meu atual sistema somente precisa gerar um XML com os dados da venda . O que é absolutamente fácil.
Agora é só aprimorar os conhecimentos gerais sobre todos os processos envolvidos e TÃCA LE PAU
é isso aÃ, RIPA NA CHULIPA E PINBA NA GORDUCHINHA E ROLA A BOLA......
Citação::
No caso do Sat o certificado da softhouse é usado apenas na ativação do aparelho?
Edson, tudo bem....
Para ativar você somente informará que tipo de certificado estará utilizando.(AC-SAT,ICP-BRASIL, RENOVAR CERTIFICADO(ICP-BRASIL)). São apenas estas 3 opções e devem ser passadas com parametro do tipo inteiro conforme abaixo :
Citação:
Efetuar a ativação do SAT.
Parâmetros
numeroSessao: Inteiro, com 6 dÃgitos, contendo o número aleatório gerado pelo aplicativo comercial para controle da comunicação.
subComando: Inteiro com o identificador do tipo de Certificado.
1 - Tipo de Certificado = AC-SAT/SEFAZ.
2 - Tipo de Certificado = ICP-BRASIL.
3 - Renovação do Certificado ICP-BRASIL.
codigoDeAtivacao: Const char pointer, com no mÃnimo 8 e no máximo 32 caracteres, contendo a senha definida pelo contribuinte no software de ativação.
CNPJ: Const char pointer, com 14 caracteres, contendo somente os números do CNPJ do contribuinte.
cUF: Inteiro com o código do estado da federação onde o SAT será ativado.
Efetivamente o certificado digital da SH será utilizado apenas para gerar a assinatura dos CNPJs da SH e do Contribuinte.
Com isso vc obterá uma string assinada digitalmente que deverá ser passada em 3 situações :
FUNÇÃO : AssociarAssinatura - Passa a string(CNPJSH+CNPJCONTRIBUINTE) ASSINDADA como parametro para a função AssociarAssinatura.
ARQUIVO XML : EnviarDadosVenda - Passa a string(CNPJSH+CNPJCONTRIBUINTE) ASSINADA para tag <signAC>string assinada</signAC>
ARQUIVO XML : CancelarUltimaVenda - Passa a string(CNPJSH+CNPJCONTRIBUINTE) ASSINADA para tag <signAC>string assinada</signAC>
Até onde li são estes casos em que utilizará o certificado digital da Software House.
é isso ai....
Citação::
FOXMAN, vc ja chegou a desenvolver o gerenciador pra emitir os CFe de varios PDVs?
Estou concluindo o desenvolvimento da DLL que o gerenciador irá utilizar.
Vou criar um Service Application para esta finalidade e vai ficar rodando em um servidor.
A única coisa que esta faltando é gerar os xml de Venda.
Eu não tenho o grande conhecimento que você tem!!! rs
de inicio eu pensei tambem em criar um serviço para isso que ficasse aguardando as vendas serem gravadas no banco de dados mas pensei q eu teria q criar um loop pra ficar verificando essas vendas e fiquei preocupado em sobrecarregar o banco em fazer varias consultas ( Se minha logica estiver errada desculpe como falei em relação a conhecimento)
Agora estou pensando em criar um aplicativo que será instalado no servidor que fique ansioso aguardando XMLs e os PDVs vão gerar o XML diretamente na pasta do servidor, ao encontrar um arquivo XML o mesmo faz toda a validação e emissão do CFe e logo apos envia uma resposta (Gerando um TXT) informando se foi emitido ou não... O PDV lê essa resposta e caso negativo ele mostra o erro na tela e bloqueia a finalização da venda...
Nesse processo que vc vai desenvolver o seu vc me indicaria algo? obrigado
Citação::
:
No caso do Sat o certificado da softhouse é usado apenas na ativação do aparelho?
Edson, tudo bem....
Para ativar você somente informará que tipo de certificado estará utilizando.(AC-SAT,ICP-BRASIL, RENOVAR CERTIFICADO(ICP-BRASIL)). São apenas estas 3 opções e devem ser passadas com parametro do tipo inteiro conforme abaixo :
Efetuar a ativação do SAT.
Parâmetros
numeroSessao: Inteiro, com 6 dÃgitos, contendo o número aleatório gerado pelo aplicativo comercial para controle da comunicação.
subComando: Inteiro com o identificador do tipo de Certificado.
1 - Tipo de Certificado = AC-SAT/SEFAZ.
2 - Tipo de Certificado = ICP-BRASIL.
3 - Renovação do Certificado ICP-BRASIL.
codigoDeAtivacao: Const char pointer, com no mÃnimo 8 e no máximo 32 caracteres, contendo a senha definida pelo contribuinte no software de ativação.
CNPJ: Const char pointer, com 14 caracteres, contendo somente os números do CNPJ do contribuinte.
cUF: Inteiro com o código do estado da federação onde o SAT será ativado.
Efetivamente o certificado digital da SH será utilizado apenas para gerar a assinatura dos CNPJs da SH e do Contribuinte.
Com isso vc obterá uma string assinada digitalmente que deverá ser passada em 3 situações :
FUNÇÃO : AssociarAssinatura - Passa a string(CNPJSH+CNPJCONTRIBUINTE) ASSINDADA como parametro para a função AssociarAssinatura.
ARQUIVO XML : EnviarDadosVenda - Passa a string(CNPJSH+CNPJCONTRIBUINTE) ASSINADA para tag <signAC>string assinada</signAC>
ARQUIVO XML : CancelarUltimaVenda - Passa a string(CNPJSH+CNPJCONTRIBUINTE) ASSINADA para tag <signAC>string assinada</signAC>
Até onde li são estes casos em que utilizará o certificado digital da Software House.
é isso ai....
Desculpe minha ignorância rsrsrs mas,,,, em relação ao certificado. O da Software house no caso meu certificado será utilizado apenas para ativar o aparelho para produção? Por exemplo, eu adquiro o cetificado a3 para minha CNPJ ok..... o cliente compra o aparelho SAT da Bematech (este é o que estou mirando para trabalhar) para podermos utilizar este aparelho em modo [Ô]produção[Ô] o meu certificado será utilizado apenas uma vez para ativar o aparelho e depois poder libera-lo para o cilente? é isto? Antes de fazer a ativação do aparelho utilizando meu certificado (softwarehouse) posso utilizar o aparelho para testes (ambiente homologação) sem o certificado?
Citação:Desculpe minha ignorância rsrsrs mas,,,, em relação ao certificado. O da Software house no caso meu certificado será utilizado apenas para ativar o aparelho para produção? Por exemplo, eu adquiro o cetificado a3 para minha CNPJ ok..... o cliente compra o aparelho SAT da Bematech (este é o que estou mirando para trabalhar) para podermos utilizar este aparelho em modo [Ô]produção[Ô] o meu certificado será utilizado apenas uma vez para ativar o aparelho e depois poder libera-lo para o cilente? é isto? Antes de fazer a ativação do aparelho utilizando meu certificado (softwarehouse) posso utilizar o aparelho para testes (ambiente homologação) sem o certificado?
Veja bem.
Voce na ativação você somente irá informar que tipo de certificado é.
Depois, você irá utilizar o SEU certificado para assinar uma string composta por seu CNPJ e o CNPJ do seu cliente para ASSOCIARASSINATURA.
Este processo é apenas uma unica vez.
Depois você utilizará seu certificado para novamente assinar uma string composta pelo seu CNPJ e o CNPJ do seu cliente e desta vez será para preencher a tag <signAC> dos xmls de Venda e Cancelamento.
No entanto você pode ter uma configuração no seu sistema que armazene essa string assinada, e utilizá-la quando necessário.
Citação::
Opa, então essa semana tbm começo a desenvolver o gerenciador...
Eu não tenho o grande conhecimento que você tem!!! rs
de inicio eu pensei tambem em criar um serviço para isso que ficasse aguardando as vendas serem gravadas no banco de dados mas pensei q eu teria q criar um loop pra ficar verificando essas vendas e fiquei preocupado em sobrecarregar o banco em fazer varias consultas ( Se minha logica estiver errada desculpe como falei em relação a conhecimento)
Agora estou pensando em criar um aplicativo que será instalado no servidor que fique ansioso aguardando XMLs e os PDVs vão gerar o XML diretamente na pasta do servidor, ao encontrar um arquivo XML o mesmo faz toda a validação e emissão do CFe e logo apos envia uma resposta (Gerando um TXT) informando se foi emitido ou não... O PDV lê essa resposta e caso negativo ele mostra o erro na tela e bloqueia a finalização da venda...
Nesse processo que vc vai desenvolver o seu vc me indicaria algo? obrigado
Leandro, por questões obvias em meu pdv, vou utilizar a geração de arquivos xml. Uma vez que preciso apenas ao final da venda gerar o xml sem muitas complicações.
Meu sistema já gera um arquivo txt para cada venda então somente preciso alterar e passar a gerar um XML.
Grande problema é a queda de comunicação com o servidor.
E por esta razão penso em alguma solução que possa substituir este servidor em caso de pane. E a única que me vem a cabeça seria NFC-e.
Indo totalmente contrário ao que foi determinado pela secretaria da fazenda, penso em ter o SAT como emissor e NFC-e em contingência.
Mas ainda não decidi se arrisco confiar no servidor, ou já desenvolvo essa válvula de escape (NFC-e).
Citação:Grande problema é a queda de comunicação com o servidor.
Nesse caso, para também o banco de dados, e ai o problema é maior ainda, nem NFC-E resolve.
O problema seria o SAT queimar e o cliente só ter hum na loja, nesse caso vamos ter aqui um de reserva para atender de imediato o cliente(vender para ele), isso caso não esteja na garantia.
Então nesse caso sim entra a NFC-E.
Acontece que meus poucos neuronios já estão cansados demais, haja, agora NFC-E, o problema não é nem enviar, mas imprimir.