segunda-feira, 27 de abril de 2009

domingo, 26 de abril de 2009

Nfe - Uninfe

uninfe


uninfe

Nfe - notaele.exe -> Acrescentado (notaeled.dll)

... notaele.exe
1. criando uma nova procedure => NotaElet_xml
2. novo icone - nota eletronica xml
3. criado notaeled.dll-> Alterando notaele_xml
4. Criando Chave - Id - Nfe:
( Criado :
`
Nfe_Id_Grupo
Nfe_Id_Codigo_Uf 02
Nfe_Id_aa_emissao 02
Nfe_Id_mm_Emissao 02
Nfe_Id_cnpj_emitente 014
Nfe_Id_modelo 02
Nfe_Id_Serie 03
Nfe_Id_Numero_nota 09
Nfe_Id_Codigo_Numerico 09
Nfe_Id_Digito 01
final

5. Colocado valores variavies fatnota
6. Diretorio \amarildo\xml\envio
\amarildo\xml\ => Fixo

Nfe - Blog NFE

http://g2kanfe.wordpress.com/2008/09/17/objetivos-do-blog-da-nota-fiscal-eletronica-nfe/
.

Nfe - Numero Recibo


Numero do Recico de Lote
O numero do Recibo do lote deve ser gerado pelo portal SEFAZ, com a seguinte regra:
99 - Codigo da Uf

99999999999 - Sequencia de 13 posicoes


Nfe - Calculo do Digito Verificador


Calculo do Digito Verificador da chve de acesso da nfe-e
o digito verificador da chave de acesso da nfe e baseado em um calculo do modulo 11. o modulo11 de um numero e calculado multiplicando-se cada algarismo pela sequencia de multiplicadores 2,3,4,5,... posicionados da direita para a esquerdaa somatoria dos resultados ponperacao dos algarismos e dividida por 11 e o dv sera a diferenca entre o divisor 11 e o resto da divisaod=11 - (resto da divisao)
quando o resto da divisao for 0 ou 1, o dv devera ser igual a 0.


Nfe - Gerar Id




Nfe - Gerar Id

//MontaChaveAcesso
// (codigo alterado em 19/11/08 para compor a chave no formato da versão 1.10 do laioute)
//-------------------
//Parametros:
//codUF - codigo da Unidade e Federação do Município de acordo tabela IBGE.
//dtEmissaso - data de emissão da nota fiscal
//CNPJ - codigo CNPJ do emitente
//Modelo - Modelo da Nota Fiscal NF-e (55)
//Serie - codigo de serie da NFe
//NumeroNF - Número da Nota Fiscal
//Result = Chave de acesso
//
Function MontaChaveAcessoNFe_v110( codUF: integer; dtEmissao: TDateTime; CNPJ:string;
Modelo, Serie, NumeroNF): string;
var emissao:string[10];
chave:string;
CodigoNumerico: Integer;
begin
emissao := formatdatetime('DD/MM/YY', dtEmissao);

// Essa parte do código gera o Código Numérico (Aleatório)
//para que funcione inclua a unit "Math" na cláusule Uses.
Randomize;
CodigoNumerico := Random(99999999);

chave := IntToStr(codUF)+copy( emissao, 7,2)+copy(emissao,4,2)+
LimpaCNPJ(CNPJ)+StrZero(Modelo,2,0)+StrZero(Serie,3,0)+
StrZero(NumeroNF,9,0)+StrZero(CodigoNumerico,9,0);

Result := chave + Modulo11(chave);

end;

// LimpaCNPJ (retira máscaras do CNPJ)
//------------------------------------
Function LimpaCNPJ( cnpj: string): string;
begin
Result := StringReplace(StringReplace(StringReplace( cnpj,
'.','',[rfReplaceAll]),
'-','',[rfReplaceAll]),
'/','',[rfReplaceAll]);
end;

// StrZero (Preenche com zeros à esquerda)
// ------------------------------------------------------
Function StrZero(Num : Real; Zeros, Deci: Integer): string;
var tam,z : integer;
res,zer : string;
begin
str(Num:Zeros:Deci, res);
res := Alltrim(res);
tam := length(res);
zer := '';
for z := 1 to (Zeros-tam) do
zer := zer + '0';
result := zer+res
end;

sexta-feira, 24 de abril de 2009