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.
Erro Relatório de Fotos
-
- Rank: Programador Sênior
- Mensagens: 49
- Registrado em: Seg, 23 Mar 2009 10:44 am
- Localização: Sapiranga - RS
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 escreveu:não funciona com NVL ? tipo se não encontra joga para foto padrão !!
-
- 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 ?
Se sim, passa como parametro o caminho da foto e não resolve o caminho na query em si
Isso te ajuda ?
-
- 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
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
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
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 14 visitantes