como faço para importar um arquivo pdf para um forms?
-
- Rank: Programador Júnior
- Mensagens: 25
- Registrado em: Seg, 17 Mar 2008 2:31 pm
- Localização: MARINGA-PR
como faço para importar um arquivo pdf para um forms?
-
- Moderador
- Mensagens: 2016
- Registrado em: Qua, 12 Jan 2005 3:25 pm
- Localização: Araraquara - SP
Abraço,
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Maristela, tudo bem?
Você gostaria de exibir um arquivo pdf, do forms?
Tipo, o usuário clica no pdf e ele abre via forms?
Você gostaria de exibir um arquivo pdf, do forms?
Tipo, o usuário clica no pdf e ele abre via forms?
-
- Rank: Programador Júnior
- Mensagens: 25
- Registrado em: Seg, 17 Mar 2008 2:31 pm
- Localização: MARINGA-PR
na verdade preciso imprimir esse arquivo PDF pelo forms ou pelo reports, tenho que abrir o PDF e imprimir, ele já vem com os dados e principalmente no formato certo.
-
- Moderador
- Mensagens: 2016
- Registrado em: Qua, 12 Jan 2005 3:25 pm
- Localização: Araraquara - SP
Abraço,
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Então Maristela,
Eu tenho um exemplo aqui, para te mostrar na tela (daí você pode imprimir etc), caso o pdf (ou qualquer outro tipo DE) esteja salvo num BLOB, no banco.
Você deve criar um Item no teu Forms, do tipo OLE Container, com as seguintes características:
Agora, provavelmente você tenha este arquivo no sistema operacional, e não no banco, correto?
Caso positivo, terei que dar uma olhada, pois não tenho nada pronto.
qualquer coisa, manda ai.
Eu tenho um exemplo aqui, para te mostrar na tela (daí você pode imprimir etc), caso o pdf (ou qualquer outro tipo DE) esteja salvo num BLOB, no banco.
Você deve criar um Item no teu Forms, do tipo OLE Container, com as seguintes características:
Item Type = OLE Container
OLE In-place Activation = No
OLE Tenant Types = Embedded
Show OLE Tenant Types = No
OLE Tenant Aspect = Thumbnail Preview
Database Item = Yes
Column Name = Nome_da_Coluna_Blob
Caso positivo, terei que dar uma olhada, pois não tenho nada pronto.
qualquer coisa, manda ai.
-
- Rank: Programador Júnior
- Mensagens: 25
- Registrado em: Seg, 17 Mar 2008 2:31 pm
- Localização: MARINGA-PR
É UMA NOTA FISCAL, NA VERDADE UM DANFE (NOTA FISCAL ELETRONICA), O ARQUIVO PDF ESTARÁ ARMAZENADO NO CAMPO NF_PDF_BBL.
SQL> DESC CNFE_NFEPDF
Name Null? Type
------------------------------ ----------- -------- -------------------
CD_EMP NOT NULL NUMBER(3)
CD_FIL NOT NULL NUMBER(2)
TP_ESPECIE NOT NULL VARCHAR2(3)
SR_FISC NOT NULL VARCHAR2(3)
NR_FISC NOT NULL NUMBER(10)
NF_PDF_BBL BLOB <-----
ESTÁ FORMATADA COMO DEVE DEVE SER E JÁ COM DADOS, SE CONSEGUISSE IMPRIMIR DO FORMS SERIA UMA MARAVILHA, MUITA GENTE POR AÍ NÃO CONSEGUIU.
SQL> DESC CNFE_NFEPDF
Name Null? Type
------------------------------ ----------- -------- -------------------
CD_EMP NOT NULL NUMBER(3)
CD_FIL NOT NULL NUMBER(2)
TP_ESPECIE NOT NULL VARCHAR2(3)
SR_FISC NOT NULL VARCHAR2(3)
NR_FISC NOT NULL NUMBER(10)
NF_PDF_BBL BLOB <-----
ESTÁ FORMATADA COMO DEVE DEVE SER E JÁ COM DADOS, SE CONSEGUISSE IMPRIMIR DO FORMS SERIA UMA MARAVILHA, MUITA GENTE POR AÍ NÃO CONSEGUIU.
-
- Moderador
- Mensagens: 2016
- Registrado em: Qua, 12 Jan 2005 3:25 pm
- Localização: Araraquara - SP
Abraço,
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Então Maristela,
Coloca esse campo na tela, conforme lhe orientei no tópico anterior, criando um OLE_Container.
É pra dar certo sim.
qualquer coisa, dá um alô, ok?
Coloca esse campo na tela, conforme lhe orientei no tópico anterior, criando um OLE_Container.
É pra dar certo sim.
qualquer coisa, dá um alô, ok?
-
- Rank: Programador Júnior
- Mensagens: 25
- Registrado em: Seg, 17 Mar 2008 2:31 pm
- Localização: MARINGA-PR
O BLOCO DESTE CAMPO BLOB DEVE PERTENCER A TABELA? E TRAGO ELE ATRAVES DE UMA CONSULTA NORMAL?
QUAL A MELHOR MANEIRA DE ENVIAR ESTE ARQUIVO PARA A IMPRESSORA?
QUAL A MELHOR MANEIRA DE ENVIAR ESTE ARQUIVO PARA A IMPRESSORA?
-
- Moderador
- Mensagens: 2016
- Registrado em: Qua, 12 Jan 2005 3:25 pm
- Localização: Araraquara - SP
Abraço,
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Este item deve pertencer à tabela sim.
Aquele campo que você mencionou acima, ser Blob.
A melhor forma, quando der duplo-clique no item, ele irá abrir a opção de imprimir, do próprio Adobe.
Aquele campo que você mencionou acima, ser Blob.
A melhor forma, quando der duplo-clique no item, ele irá abrir a opção de imprimir, do próprio Adobe.
-
- Rank: Programador Júnior
- Mensagens: 25
- Registrado em: Seg, 17 Mar 2008 2:31 pm
- Localização: MARINGA-PR
CRIEI O BLOCO COM BASE NA TABELA QUE CONTEM O CAMPO BLOB, E CRIEI NO CANVAS UM CAMPO BASE TABLE,NOME DO BLOB NA BASE,TIPO OLE. (QUE TAMANHO DEVO DEIXÁ-LO ?)
EXECUTEI O FORMS , O CAMPO APARECE EM BRANCO, SE DER DOUBLE-CLICK NELE NADA ACONTECE, SE DER F8 DÁ UMA MENSAGEM QUE NÃO TEM ITENS QUERYABLE. COMO PROCEDO NESTA ESTAPA?
FALTOU ALGUMA CONFIGURAÇÃO OU UMA TRIGGER ESPEFICA QUE DEVO ESCREVER PARA O CAMPO OLE?
EXECUTEI O FORMS , O CAMPO APARECE EM BRANCO, SE DER DOUBLE-CLICK NELE NADA ACONTECE, SE DER F8 DÁ UMA MENSAGEM QUE NÃO TEM ITENS QUERYABLE. COMO PROCEDO NESTA ESTAPA?
FALTOU ALGUMA CONFIGURAÇÃO OU UMA TRIGGER ESPEFICA QUE DEVO ESCREVER PARA O CAMPO OLE?
-
- Moderador
- Mensagens: 2016
- Registrado em: Qua, 12 Jan 2005 3:25 pm
- Localização: Araraquara - SP
Abraço,
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Maristela,
Teu campo Blob está como Database Item = Yes e Column Name = nome da coluna da Base?
Teu campo Blob está como Database Item = Yes e Column Name = nome da coluna da Base?
-
- Rank: Programador Júnior
- Mensagens: 25
- Registrado em: Seg, 17 Mar 2008 2:31 pm
- Localização: MARINGA-PR
sim esta.
-
- Moderador
- Mensagens: 2016
- Registrado em: Qua, 12 Jan 2005 3:25 pm
- Localização: Araraquara - SP
Abraço,
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Maristela,
Esse bloco possui doctos Blob inseridos na base?
você dá duplo-clique e nada?
Caso não consiga, dá um alô que posto um exemplo que tenho aqui na máquina ok?
Esse bloco possui doctos Blob inseridos na base?
você dá duplo-clique e nada?
Caso não consiga, dá um alô que posto um exemplo que tenho aqui na máquina ok?
-
- Rank: Programador Júnior
- Mensagens: 25
- Registrado em: Seg, 17 Mar 2008 2:31 pm
- Localização: MARINGA-PR
SIM ESTA ...
O QUE DEVERIA APARECER NO CAMPO?
O QUE DEVERIA APARECER NO CAMPO?
-
- Rank: Programador Júnior
- Mensagens: 25
- Registrado em: Seg, 17 Mar 2008 2:31 pm
- Localização: MARINGA-PR
AQUI APARECE EM BRANCO ...
-
- Moderador
- Mensagens: 2016
- Registrado em: Qua, 12 Jan 2005 3:25 pm
- Localização: Araraquara - SP
Abraço,
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
No caso, se você tem um PDF guardado neste campo Blob, era pra ele abrir, automaticamente no Adobe.
Vou procurar um exemplo que eu tinha e, posto aqui ok?
Vou procurar um exemplo que eu tinha e, posto aqui ok?
-
- Rank: Programador Júnior
- Mensagens: 25
- Registrado em: Seg, 17 Mar 2008 2:31 pm
- Localização: MARINGA-PR
ok, obrigado.
-
- Moderador
- Mensagens: 2016
- Registrado em: Qua, 12 Jan 2005 3:25 pm
- Localização: Araraquara - SP
Abraço,
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP
Maristela,
Este exemplo em anexo, trabalha com a tabela EMP e, uma filha dela que criei aqui, senão me engano, EMP_DOCTO.
Crie esta segunda tabela, deve ter uma sequencia, o código do empregado e, o docto (blob).
Aqui funciona perfeitamente, você pode anexar qualquer tipo de arquivo no Banco e, recuperá-lo através do forms.
Download FMB
Caso não consiga montar, dá um alo que vejo se tenho os scripts de criação, tudo bem?
Este exemplo em anexo, trabalha com a tabela EMP e, uma filha dela que criei aqui, senão me engano, EMP_DOCTO.
Crie esta segunda tabela, deve ter uma sequencia, o código do empregado e, o docto (blob).
Aqui funciona perfeitamente, você pode anexar qualquer tipo de arquivo no Banco e, recuperá-lo através do forms.
Download FMB
Caso não consiga montar, dá um alo que vejo se tenho os scripts de criação, tudo bem?
-
- Rank: Programador Júnior
- Mensagens: 25
- Registrado em: Seg, 17 Mar 2008 2:31 pm
- Localização: MARINGA-PR
Olá Trevisolli,
Obrigado pelo exemplo, funciona certinho.
Ele pega um arquivo do sistema operacional e joga no campo blob do forms , o campo aparece populado e o double click funciona abrindo um editor para impressão, e se salvar grava na base certinho.
O que não estou conseguindo fazer é resgatar da base, quando consulto o registro o campo do bloco não aparece com os dados, apesar de ter sido gravado na base.
Eu preciso pegar o conteúdo da coluna blob na base e jogar no bloco forms, executo a consulta mas a coluna não aparece com os "riscos" como quando pego do sistema operacional, mesmo no seu exemplo da emp.
Tem alguma instrução específica para pegar da base e jogar no bloco ??? (tipo essas forms_ole )
Att.
Maristela
Obrigado pelo exemplo, funciona certinho.
Ele pega um arquivo do sistema operacional e joga no campo blob do forms , o campo aparece populado e o double click funciona abrindo um editor para impressão, e se salvar grava na base certinho.
O que não estou conseguindo fazer é resgatar da base, quando consulto o registro o campo do bloco não aparece com os dados, apesar de ter sido gravado na base.
Eu preciso pegar o conteúdo da coluna blob na base e jogar no bloco forms, executo a consulta mas a coluna não aparece com os "riscos" como quando pego do sistema operacional, mesmo no seu exemplo da emp.
Tem alguma instrução específica para pegar da base e jogar no bloco ??? (tipo essas forms_ole )
Att.
Maristela
-
- Rank: Programador Júnior
- Mensagens: 22
- Registrado em: Ter, 11 Set 2007 10:16 am
- Localização: Cachoeirinha/RS
- Contato:
Rogerio Jahnke
Maristela, boa tarde, conseguiu resolver o problema de recuperar as imagens gravadas trazendo na query para o forms? estou com mesmo problema que você, se tu conseguiu resolver coloca ai a solução,se tem alguma trigger ou algo assim que tenha que fazer no pre-query para trazer a imagem.
Obrigado
Obrigado
-
- Rank: Analista Júnior
- Mensagens: 91
- Registrado em: Ter, 20 Mar 2007 7:19 pm
- Localização: Campinas - SP
- Contato:
Acho que pdf você só vai conseguir baixar em algum diretório...
Segue um script que faz isso... talvez te ajude...
Segue um script que faz isso... talvez te ajude...
DECLARE
--
vBlob BLOB;
vTamanho INTEGER;
vFile utl_file.file_type;
vAmount BINARY_INTEGER := 32767;
vPosicao INTEGER := 1;
vBuffer RAW(32767);
vArquivo VARCHAR2(30);
--
BEGIN
--
SELECT documento
INTO vBlob
FROM doc_ass_dig
WHERE id_doc_ass = 589
AND status = 'L'
AND id_tp_doc = 2;
--
vTamanho := dbms_lob.getlength(vBlob);
vArquivo := 'teste.pdf';
vFile := utl_file.fopen( 'coloque aqui o diretório destino',
vArquivo,
'w',
32767 );
--
WHILE vPosicao < vTamanho LOOP
--
IF vPosicao + vAmount > vTamanho THEN
vAmount := (vTamanho + 1) - vPosicao;
END IF;
--
dbms_lob.read(vBlob, vAmount, vPosicao, vBuffer);
utl_file.put_raw(vFile, vBuffer, TRUE);
vPosicao := vPosicao + vAmount;
--
END LOOP;
--
utl_file.fclose(vFile);
--
END;
-
- Rank: Estagiário Júnior
- Mensagens: 1
- Registrado em: Qua, 25 Jun 2008 2:16 pm
- Localização: Porto Alegre
Estou tentando baixar o pdf mas dá um erro "ERROR: Abnormal termination, Error Code: C0000005 ACCESS_VIOLATION" quando vai executar o "dbms_lob".
- NightSpy
- Rank: Programador Sênior
- Mensagens: 49
- Registrado em: Ter, 09 Set 2008 4:18 pm
- Localização: SP
Desculpe desenterrar este tópico, porem minha dúvida tem a ver com o assunto.
Quero abrir o PDF via forms.
Não tenho ele em um campo Blob, porem tenho ele em disco, tenho o caminho e nome dele em uma tabela. Consigo atraves desse OLE Container abri-lo.
Consegui de outra forma, sem usar o OLE e passando o caminho do executavel do reader... porem gostaria de uma forma onde só passasse o nome do PDF e o "windows" se virasse, até porque o "danado" sabe que o que abre PDF é o acrobat reader.
Obrigado desde já.
Quero abrir o PDF via forms.
Não tenho ele em um campo Blob, porem tenho ele em disco, tenho o caminho e nome dele em uma tabela. Consigo atraves desse OLE Container abri-lo.
Consegui de outra forma, sem usar o OLE e passando o caminho do executavel do reader... porem gostaria de uma forma onde só passasse o nome do PDF e o "windows" se virasse, até porque o "danado" sabe que o que abre PDF é o acrobat reader.
Obrigado desde já.
- NightSpy
- Rank: Programador Sênior
- Mensagens: 49
- Registrado em: Ter, 09 Set 2008 4:18 pm
- Localização: SP
Tinha conseguido de outra forma(DDE.app_begin), agora lembrei do famoso HOST ¬¬
Consegui, porem ao usar o HOST com o atributo no_screen, ao fechar o pdf, trava o runtime que o chamou....
Se chamo sem este atributo, tenho q fechar o prompt para voltar a minha aplicação(runtime).. funciona, porem não queria mostrar o prompt.
alguém sabe o que acontece?
Obrigado desde já.
Consegui, porem ao usar o HOST com o atributo no_screen, ao fechar o pdf, trava o runtime que o chamou....
Se chamo sem este atributo, tenho q fechar o prompt para voltar a minha aplicação(runtime).. funciona, porem não queria mostrar o prompt.
alguém sabe o que acontece?
Obrigado desde já.
-
- Rank: Programador Júnior
- Mensagens: 19
- Registrado em: Qua, 01 Jul 2009 10:35 am
- Localização: Belo Horizonte / MG
Pessoal, me desculpem por reabrir um tópico antigo, mas a necessidade fala mais alto.
O exemplo gentilmente fornecido pelo colega "Trevisolli" funcionou que é uma beleza, fiz um módulo de importação de diversos aquivos para minha base. (de todo o tipo). Porém, agora, eu preciso fazer o sentido inverso do exemplo fornecido. (ou seja) pegar um arquivo que está num campo tipo blob, e gravá-lo em um determinada pasta. O utl_file grava certinho, mas no servidor, e eu preciso gravar na máquina "cliente" onde o forms estará rodando...
Alguém (por favor) consegue me ajudar:?
At.
Ernandes
O exemplo gentilmente fornecido pelo colega "Trevisolli" funcionou que é uma beleza, fiz um módulo de importação de diversos aquivos para minha base. (de todo o tipo). Porém, agora, eu preciso fazer o sentido inverso do exemplo fornecido. (ou seja) pegar um arquivo que está num campo tipo blob, e gravá-lo em um determinada pasta. O utl_file grava certinho, mas no servidor, e eu preciso gravar na máquina "cliente" onde o forms estará rodando...
Alguém (por favor) consegue me ajudar:?
At.
Ernandes
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 16 visitantes