terça-feira, 18 de agosto de 2009
segunda-feira, 17 de agosto de 2009
sexta-feira, 7 de agosto de 2009
terça-feira, 4 de agosto de 2009
sábado, 1 de agosto de 2009
sexta-feira, 31 de julho de 2009
quarta-feira, 29 de julho de 2009
sábado, 18 de julho de 2009
sexta-feira, 17 de julho de 2009
quinta-feira, 16 de julho de 2009
terça-feira, 14 de julho de 2009
quinta-feira, 9 de julho de 2009
quarta-feira, 8 de julho de 2009
terça-feira, 7 de julho de 2009
sexta-feira, 3 de julho de 2009
quarta-feira, 3 de junho de 2009
domingo, 24 de maio de 2009
domingo, 17 de maio de 2009
sábado, 16 de maio de 2009
sexta-feira, 15 de maio de 2009
quinta-feira, 14 de maio de 2009
domingo, 3 de maio de 2009
Xml - Clarion - Buscar Numero lote
-?xml version="1.0" encoding="utf-8"?>
-DadosLoteNfe>
-NumeroLoteGerado>87-/NumeroLoteGerado>
-/DadosLoteNfe>
grupo_txt FILE,DRIVER('ASCII'),OEM,NAME(fdarquivo),PRE(gru_txt),CREATE,BINDABLE,THREAD
Record RECORD,PRE()
grupo string(@s255)
END
END
Numero_Lote string(@n010)
open(grupo_txt)
set(grupo_txt)
loop
next(grupo_txt)
if errorcode()
break
else
if gru_txt:grupo[1,1:18]=''-NumeroLoteGerado>'
a#=1
numero_lote=0
loop
IF NOT NUMERIC(gru_txt:grupo[19,1:a#])
break
else
numero_lote=gru_txt:grupo[19,1:a#]
a#+=1
end
end
message(numero_lote)
end!Final if
end!Final if
end!Final Loop
-DadosLoteNfe>
-NumeroLoteGerado>87-/NumeroLoteGerado>
-/DadosLoteNfe>
grupo_txt FILE,DRIVER('ASCII'),OEM,NAME(fdarquivo),PRE(gru_txt),CREATE,BINDABLE,THREAD
Record RECORD,PRE()
grupo string(@s255)
END
END
Numero_Lote string(@n010)
open(grupo_txt)
set(grupo_txt)
loop
next(grupo_txt)
if errorcode()
break
else
if gru_txt:grupo[1,1:18]='
a#=1
numero_lote=0
loop
IF NOT NUMERIC(gru_txt:grupo[19,1:a#])
break
else
numero_lote=gru_txt:grupo[19,1:a#]
a#+=1
end
end
message(numero_lote)
end!Final if
end!Final if
end!Final Loop
terça-feira, 28 de abril de 2009
segunda-feira, 27 de abril de 2009
domingo, 26 de abril de 2009
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
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 - Numero Recibo
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.
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;
//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
Assinar:
Postagens (Atom)