Erro Relatório de Fotos

Dicas e truques sobre Oracle Reports Builder - modo gráfico ou modo caractere, ascii, arquivo .PRT, etc
Responder
diegorp
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 49
Registrado em: Seg, 23 Mar 2009 10:44 am
Localização: Sapiranga - RS

Boa Tarde
Desenvolvi um relatório de fotos usando o Reports 6i, na tabela de produto é salvo apenas o caminho da foto, por exemplo: "C:\temp\FOTO_001.JPG" e é esse caminho que eu passo pro relatório pra ele imprimir a foto.... mas tenho alguns produtos que estão com o caminho salvo na tabela de produto mas a foto não existe mais no diretório "C:\temp\" ai o reports mostra o erro "REP-0108: File 'C:\temp\FOTO_001.JPG' not found" e cancela a impressao do relatório. Preciso achar uma forma de verificar se a foto existe na pasta antes de imprimir, pois caso ela não exista eu passo o caminho de uma outra foto padrão. Já vi alguns tópicos aqui do blog não não tive sucesso.
schnu
Rank: Analista Pleno
Rank: Analista Pleno
Mensagens: 110
Registrado em: Ter, 24 Mai 2005 9:16 pm
Localização: Dongguan - Guangdong - China
Deus criou os loucos para confundir os sábios

não funciona com NVL ? tipo se não encontra joga para foto padrão !!
diegorp
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 49
Registrado em: Seg, 23 Mar 2009 10:44 am
Localização: Sapiranga - RS

schnu escreveu:não funciona com NVL ? tipo se não encontra joga para foto padrão !!
Não funciona com nvl, porque o caminho esta salvo no banco, o report só se da conta de que a imagem não existe na pastar quando ele tenta carregar a imagem do caminho e não acha nada na pasta, ai dispara erro.
schnu
Rank: Analista Pleno
Rank: Analista Pleno
Mensagens: 110
Registrado em: Ter, 24 Mai 2005 9:16 pm
Localização: Dongguan - Guangdong - China
Deus criou os loucos para confundir os sábios

Ta, mas antes de chamar o relatorio você pode abrir um cursor e pegar o caminho da foto certo ??

Se sim, passa como parametro o caminho da foto e não resolve o caminho na query em si
Isso te ajuda ?
Trevisolli
Moderador
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

Brother, beleza?


Pelo que entendi, como está montada a estrutura hoje, deve haver, obrigatoriamente, um sincronismo entre o teu Sistema Operacional e, o teu BD, no caso, a tabela que guarda os endereços das imagens.

Para tal, creio que existam duas possibilidades (vou deixar o tópico aberto para que demais foristas opinem):

1) Você criar uma classe java no banco Oracle, que liste os arquivos nesta pasta, e os compare com as informações da tabela (retirando da tabela os arquivos que não existam mais no SO);

2) Criar um arquivo texto, na própria pasta C:\tem, contendo a lista dos arquivos. Porém, dessa forma tenha que ter um .bat, que, sempre que um arquivo for inserido, ele atualize a lista. Em posse dessas informações, ler esse arquivo texto via PL/SQL (daí tem o problema de se criar Directories etc, tem que se ver permissões), e, faz a comparação com a tua tabela.

No momento, é o que vejo de saída para este problema.

Grande abraço,

Trevisolli
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 10 visitantes