Comando para recuperar a versão do forms (6i,10g)

Dicas do Oracle Forms Builder - Blocos, Itens, LOV, Canvas, Triggers, comandos, PLL, d2kwutil, FMB, Alert, menus, etc
Responder
marcelolimav
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 7
Registrado em: Qua, 31 Out 2007 10:53 am
Localização: São Paulo
Marcelo
TI- ORACLE

Por acaso vocês conhecem algum comando que possa executar de dentro do forms(pll) para recuperar qual a versão do forms (tipo 6i,10g) preciso disso para efetuar a chamado do reports na web pois os comando são diferentes
rodfbar
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 241
Registrado em: Ter, 09 Out 2007 11:15 am
Localização: Batatais - SP

fala ai.. beleza..


tenta algo do tipo
--

Selecionar tudo

IF ( GET_APPLICATION_PROPERTY(USER_INTERFACE) <> 'WEB' ) THEN
    PR_IMPRIME_FORMS6;
ELSE
    PR_IMPRIME_WEB;
END IF;
--
marcelolimav
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 7
Registrado em: Qua, 31 Out 2007 10:53 am
Localização: São Paulo
Marcelo
TI- ORACLE

Muito obrigado, mas acho que você não entendeu. É o seguinte temos dois servidores de aplicação do forms um 6i e outro na 10g só que os DBA disseram que o comando para chamar o reports nas duas versões são diferentese e por isso precisava descobrir qual para de dentro da pll efetuar a chamada corretamente.
rodfbar
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 241
Registrado em: Ter, 09 Out 2007 11:15 am
Localização: Batatais - SP

no 10g ficaria +/- assim:

Selecionar tudo

declare
  REPORT_ID					 REPORT_OBJECT;
  você_REPORT_JOB_ID 	 VARCHAR2(100);
  você_REP_STATUS    	 VARCHAR2(100);
  PL_ID            PARAMLIST;
  
begin
  --
  PL_ID := CREATE_PARAMETER_LIST('relparamlist');
  ADD_PARAMETER(PL_ID, PCPARAMETRO, TEXT_PARAMETER, PCVALOR);
  --
  --CONFIGURAR RELATORIO
  REPORT_ID := FIND_REPORT_OBJECT( 'RELATORIO' );
  --
  SET_REPORT_OBJECT_PROPERTY(REPORT_ID, REPORT_FILENAME  ,/****nome do arquivo com extensão .rdf***/);
  SET_REPORT_OBJECT_PROPERTY(REPORT_ID, REPORT_COMM_MODE ,SYNCHRONOUS);
  SET_REPORT_OBJECT_PROPERTY(REPORT_ID, REPORT_DESTYPE   ,CACHE);
  SET_REPORT_OBJECT_PROPERTY(REPORT_ID, REPORT_DESFORMAT ,'PDF');
  SET_REPORT_OBJECT_PROPERTY(REPORT_ID, REPORT_SERVER	 ,'/**** caminho do servidor de aplicacoes****/');
  --
  você_REPORT_JOB_ID := RUN_REPORT_OBJECT( REPORT_ID, PL_ID ); 
  você_REP_STATUS    := REPORT_OBJECT_STATUS( você_REPORT_JOB_ID );
  --
  IF ( você_REP_STATUS = 'FINISHED' ) THEN
    você_REPORT_JOB_ID := SUBSTR(você_REPORT_JOB_ID,INSTR(você_REPORT_JOB_ID,'_',-1)+1);
    WEB.SHOW_DOCUMENT('/reports/rwservlet/getjobid'||você_REPORT_JOB_ID||'?server='||//***ome do servidor de aplicacao do report***/);
  END IF
end;
ps: desculpe mais não pude testar os codigos, digitei direto no notepad... qualquer erro manda ai que já te falo...
marcelolimav
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 7
Registrado em: Qua, 31 Out 2007 10:53 am
Localização: São Paulo
Marcelo
TI- ORACLE

Meu amigo, eu tenho todos os comando para efetuar a chamada o que preciso saber é a versão do forms se é 6i ou 10g.
rodfbar
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 241
Registrado em: Ter, 09 Out 2007 11:15 am
Localização: Batatais - SP

ok marcelo...

com o comando

Selecionar tudo

IF ( GET_APPLICATION_PROPERTY(USER_INTERFACE) <> 'WEB' ) THEN 
você não pode fazer isto..

se for diferente você faz chamada como se fosse o forms 6 senao como se fosse forms 10???????
marcelolimav
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 7
Registrado em: Qua, 31 Out 2007 10:53 am
Localização: São Paulo
Marcelo
TI- ORACLE

as duas versões são WEB como disse preciso saber se é 6i ou 10g
rodfbar
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 241
Registrado em: Ter, 09 Out 2007 11:15 am
Localização: Batatais - SP

hunm.... ok... enquanto a isto eu desconheço

tem um

get_application_property a propriedade RUNTIME_COMPATIBILITY_MODE

nunca usei... só uma dica...


abrçs
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,
Faça um testes nas duas versões que você possui, com o comando VERSION e, veja se consegue distinguir algo.

Eu fiz uma aplicaçãozinha que recebe VERSION e, ele me retornou 254.

Talvez o código abaixo o ajude.

Selecionar tudo

:block3.text_item4 := VERSION;
Responder
  • Informação
  • Quem está online

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