Julio não sei se compreendi, mas o que estou imaginando é que vc não tem a chave e gostaria de saber por exemplo se a nota 30 existe seria isto?...não conseguimos ainda fazer a consulta pelo numero gerado na empresa.
Eu faço assim, quando emito a nota gravo no banco de dados a chave. Mesmo que o operador digite por exemplo nota 30 eu procuro no banco de dados pelo número 30 localizo a chave e sendo necessário a consulta faço a consulta por ela.
A forma que conheço é pela chave ou recibo, mas apenas pelo número não tenho o conhecimento.
Caso você não tem a chave e gostaria de montar ela para fazer a consulta então eu sugiro que vc monte uma rotina para cria-la.
Exemplo:
Com esta informação você poderia montar uma rotina que cria a chave, mesmo que o operador...Página 84 do manual de integração
A partir da versão 2.00 do leiaute da NF-e, o campo tpEmis (forma de emissão da NFe)
passou a compor a chave de acesso da seguinte forma:
O tamanho do campo cNF - código numérico da NF-e foi reduzido para oito posições
para não alterar o tamanho da chave de acesso da NF-e de 44 posições que passa ser
composta pelos seguintes campos que se encontram dispersos na NF-e.
. cUF - Código da UF do emitente do Documento Fiscal
· AAMM - Ano e Mês de emissão da NF-e
· CNPJ - CNPJ do emitente
· mod - Modelo do Documento Fiscal
· serie - Série do Documento Fiscal
· nNF - Número do Documento Fiscal
· tpEmis – forma de emissão da NF-e
· cNF - Código Numérico que compõe a Chave de Acesso
· cDV - Dígito Verificador da Chave de Acesso
informasse o número da nota.
Exemplo:
Num. da nota: 30
Mes: 07
Ano: 2011
Série: 1
cUF="35" (vc já deve possuir no cadastro do teu cliente, o emissor. Digamos que SP= 35 )
AAMM= "1107"
CNPJ= "99999999999999" (CNPJ DO EMITENTE)
MOD= "55" (modelo da NFe)
Serie= "001" (série com 3 digitos)
nNF= "000000030" (numero que voce deseja tamanho 9"
tpEmis="1" (forma de emissão Normal/Contigencia/SCAN/DPEC/FSDA )
cNF="00000030" (Código Numérico que compõe a Chave de Acesso - O monitor usa o mesmo num. da nota, então vc pode pegar os últimos 8 número dela)
cDV=? Dígito Verificador da Chave de Acesso. (Foi disponibilizado no forum se não me falha a memória uma rotina chamada Modulo11() que fara o calculo. Não sei se é bem este o nome ou MOD11 mas existe esta função. Não encontrando veja na pág. 85 tem a explicação de como gerar ele.)
"35"+"1107"+"99999999999999"+"55"+"001"+"000000030"+"1"+"00000030"
cDV:=Modulo11("3511079999999999999955001000000030100000030")
Então se teu cliente digitasse:
Num. da nota: 30
Mes: 07
Ano: 2011
Série: 1
NFe.ConsultarNFE("3511079999999999999955001000000030100000030?") ?=Seria o verificador que vc encontraria rodando o Modulo11
Caso não soubesse o mes poderia deixar em branco e fazer um for i:=1 a 12,
aonde cada vez que avançasse aumentasse 1 Ex. AAMM:="1101" AAMM:="1102" AAMM:="1103" em 7 consultas (levando em conta que não consultaria com o mes maior que o atual) ele retornaria se a nota existe ou não no ano 2011 e no máx. em 12 consultas por ano.
Caso tua rotine retorne que não foi localizada, teria que ver se ela não foi inutilizada. Pelo que eu sei a consulta de inutilização é só pelo site.
Caso não seja isto por favor explique melhor a necessidade da consulta, pois não consegui compreender.
