//Vamos Separar o email quem vem no destinatario entre ;
//e colocar numa tabela de email
//amarildo@matosinformatica.com.br;matosi@terra.com.br;roque@rjsistemas.net
FOR EACH email WHERE "id_empresa="+gn_recebe_empresa
EDT_Usuario=email.email_nome_usuario
EDT_senha=email.email_senha
EDT_servidor_smtp=email.email_smtp//"smtp.gmail.com"
EDT_porta=email.email_porta_smtp//587
COMBO_tls=email.tls //1 // 1=false 2=Nenhuma opção
EDT_emailResposta=email.email_resposta
BREAK
END
EDT_id_empresa=gn_recebe_empresa
EDT_destinatario=email_Destinatario
EDT_assunto=email_assunto
EDT_Mensagem=email_Mensagem
IF email_Anexo..Occurrence>0 THEN
FOR ncontador = 1 TO email_Anexo..Occurrence
TableAddLine(TABLE_anexo,email_Anexo[ncontador])
END
END
IF EDT_emailResposta<>"" THEN
TableAddLine(TABLE_email,EDT_emailResposta)
END
FOR EACH STRING _Email OF EDT_destinatario SEPAREE BY ";"
IF _Email<>"" THEN // Se _Email diferente branco
TableAddLine(TABLE_email,_Email)
END
END
EDT_destinatario="" // Edt Destinatario igual branco
TableDisplay(TABLE_email)
TableDisplay(TABLE_anexo)
MyWindow..Plane=1
ReturnToCapture(EDT_destinatario)
//Nessa Aula Vou ensinar como ler Um Arquivo Pdf
//Ler a Imagen dele
//e Transformar em uma String
//Para ler campos dentro do Relatorio
//Isso tive de Fazer , pois uma transportadora,recebe
//Relatorios, e nao arquivos txt. Sao Varias paginas,
//e varias chaves..
//De Um trabalho manual de digitacao que levava horas,
//é feito em pouquissimos segundos
// Summary: <specify the procedure action>
// Syntax:
// pdf_Ler_Gera_Txt_ChaveNfe ()
//
// Parameters:
// None
// Return Value:
// None
//
// For instance:
// Indicate an example.
//
PROCEDURE pdf_Ler_Gera_Txt_ChaveNfe()
//43161088587357003770550010012864181342864186|
//12345678901234567890
//88587357003770
arquivo_pdf is string = "" // fSelect("", "", "Seleciona Um Arquivo Pdf ... ", "Pdf" + TAB + "*.pdf", "*.pdf")
//n_quantas_nfe is int=0
_imagen_string is string = fImageSelect(arquivo_pdf,"","Selecione PDF...","PDF"+TAB+"*.PDF")
_chaves_array is array of string
n_procura is int=0
IF _imagen_string<>"" THEN
//IMG_pdf = _imagen_string
nPaginas is int=0
LOOP
nPaginas++
sPagina_atual is string=nPaginas
EDT_pdf_texto = PDFToText(_imagen_string,sPagina_atual) // extrai texto pg 1
IF EDT_pdf_texto="" THEN BREAK
nSoma is int=0
LOOP
nSoma++
Message("Pesquisando Pagina do Pdf Numero:"+nPaginas+" "+CR+EDT_pdf_texto_1[[1 TO 44]]+CR+nSoma)
EDT_pdf_texto_1 = ExtractString(EDT_pdf_texto,nSoma," ")
IF EDT_pdf_texto_1[[1 TO 2]]=estado.codigo_uf_ibge THEN
IF EDT_pdf_texto_1[[7 TO 20]]=empresa.cnpj THEN
_chave_ is string=EDT_pdf_texto_1[[1 TO 44]]
n_tamanho is int=Length(_chave_)
IF _chave_<>"" AND n_tamanho=44 THEN
n_procura=Seek(_chaves_array,asLinearFirst,_chave_)
IF n_procura=-1 THEN
TableAddLine(TABLE_conhecimento_nfe)
n_quantos is int=TABLE_conhecimento_nfe..Occurrence
TABLE_conhecimento_nfe[n_quantos]=_chave_
END
END
END
END
IF EDT_pdf_texto_1=EOT THEN BREAK
END
END
END
TableDisplay(TABLE_conhecimento_nfe)
Message()
Info("Fim da Importação do Relatorio com Chaves")
////ler arquivo texto
////|43161088587357003770550010012864181342864186|
////|43161088587357003770550010012864191342864191|
//
//sFile is string = fSelect("", "", "Seleciona Um Arquivo Txt - Chaves Nfe", "Txt" + TAB + "*.txt", "*.txt")
//nArquivoid is int=0
//sFimarquivo is string=""
//
//nArquivoid=fOpen(sFile,foReadWrite) //nArquivoid=fOpen(CompleteDir(fCurrentDir()) +sFile,foReadWrite)
//IF nArquivoid<>-1 THEN
// Slinha is string=""
// LOOP
// Slinha=fReadLine(nArquivoid)
// IF Slinha=EOT THEN
// BREAK
// ELSE
// sFimarquivo=ExtractString(Slinha,firstRank,"|")
// _chave_ is string=ExtractString(Slinha,nextRank,"|")
// IF _chave_<>"" THEN
// TableAddLine(TABLE_conhecimento_nfe)
// n_quantos is int=TABLE_conhecimento_nfe..Occurrence
// TABLE_conhecimento_nfe[n_quantos]=_chave_
// END
// END
// END
//END
//