[oracle_br] Re: Variaveis BIND

2012-10-15 Por tôpico J. Laurindo Chiappa
 Deve funcionar sem problemas com o trace : um ponto Óbvio, mas que Vale a pena 
ressaltar, é que cfrme é sabido o RDBMS só faz verificação de valores de BINDs 
quando o cursor é aberto/SQl é executado, então vc TEM QUE ATIVAR o trace na 
sessão ** ANTES ** que ela abra os cursores e excute os SQLs, okdoc ? Caso 
contrário É Claro que nada será registrado no arquivo de trace

 []s

   Chiappa

--- Em oracle_br@yahoogrupos.com.br, Raphael Franco  escreveu
>
> Estava executando:
> 
> EXECUTE DBMS_MONITOR.SESSION_TRACE_ENABLE(session_id => , serial_num => 
> ,waits => TRUE, binds => TRUE);
> 
> Vou tentar via 10046 level 4.
> 
> 
> STATISTICAL_LEVEL= TYPICAL
> Quero obter os DML em um determinado momento de um SID.
> 
> 
> 
> Raphael
> 
> 
> 
> 
>  De: J. Laurindo Chiappa 
> Para: oracle_br@yahoogrupos.com.br 
> Enviadas: Segunda-feira, 15 de Outubro de 2012 17:06
> Assunto: [oracle_br] Re: Variaveis BIND
>  
> 
>   
> Bom, sendo 11gr2 imagino que vc poderia estar usando o SQL Monitoring/ Real 
> Time SQL Monitoring , cfrme 
> http://tech.e2sn.com/oracle/troubleshooting/oracle-s-real-time-sql-monitoring-feature-v-sql_monitor
>  : imagino que se não está usando, talvez vc não tenha as Licenças adequadas, 
> ESPECIALMENTE sendo o limitadinho/restrito SE... Outra possibilidade (essa 
> sem exigir licença alguma e funciona em qquer versão / edição de Database) 
> seria vc Capturar o SQL com os bindings via trace 10046...
> 
> Bom, respondendo especificamente à questão : Primeira coisa, Como está o 
> valor do parâmetro STATISTICAL_LEVEL para esse database ? iirc a captura de 
> binds não ocorre com BASIC, só ocorre com valores TYPICAL ou acima Faça 
> uma consulta tipo SELECT STATISTICS_NAME, ACTIVATION_LEVEL, SYSTEM_STATUS, 
> STATISTICS_VIEW_NAME, SESSION_SETTABLE
> FROM v$statistics_level; que vc vai ver
> Outra coisa, Quando foi parseado o SQL em questão ??? Tanto o cache de SQL 
> quanto os derivados (como os Planos usados para um dado SQL, as estatísticas 
> dos planos, as variáveis BIND, etc) não são Ilimitados : funcionam como um 
> CACHE, ie, via de regra a informação mais frequentemente usada é que vai 
> estar lá, de forma NENHUMA a Oracle garante que TODOS os SQLs já parseados um 
> dia vão estar no cache, muito menos os adendos como Planos, Estats dos 
> Planos, Binds
> 
> []s
> 
> Chiappa
> 
> 
> --- Em oracle_br@yahoogrupos.com.br, Raphael Franco  escreveu
> >
> > 
> > Pessoal,
> > 
> > Eestou tentando recuperar alguns DML executados no BD junto com o valor das 
> > variaveis BIND. Tentei ver na v$sql_bind_capture, tentei executar um trace 
> > binds => TRUE.   Nada da certo, ou vem nulo ou  :B1  :B2, etc... 
> > 
> > 
> > Algume sabe algum SQL ou trace que me retorne isso??? Oracle SE 11.2.0.2
> > 
> > 
> > att.
> > Raphael
> > 
> > 
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> 
> 
>  
> 
> [As partes desta mensagem que não continham texto foram removidas]
>




Re: [oracle_br] Re: Variaveis BIND

2012-10-15 Por tôpico Raphael Franco
Estava executando:

EXECUTE DBMS_MONITOR.SESSION_TRACE_ENABLE(session_id => , serial_num => 
,waits => TRUE, binds => TRUE);

Vou tentar via 10046 level 4.


STATISTICAL_LEVEL= TYPICAL
Quero obter os DML em um determinado momento de um SID.



Raphael




 De: J. Laurindo Chiappa 
Para: oracle_br@yahoogrupos.com.br 
Enviadas: Segunda-feira, 15 de Outubro de 2012 17:06
Assunto: [oracle_br] Re: Variaveis BIND
 

  
Bom, sendo 11gr2 imagino que vc poderia estar usando o SQL Monitoring/ Real 
Time SQL Monitoring , cfrme 
http://tech.e2sn.com/oracle/troubleshooting/oracle-s-real-time-sql-monitoring-feature-v-sql_monitor
 : imagino que se não está usando, talvez vc não tenha as Licenças adequadas, 
ESPECIALMENTE sendo o limitadinho/restrito SE... Outra possibilidade (essa sem 
exigir licença alguma e funciona em qquer versão / edição de Database) seria vc 
Capturar o SQL com os bindings via trace 10046...

Bom, respondendo especificamente à questão : Primeira coisa, Como está o valor 
do parâmetro STATISTICAL_LEVEL para esse database ? iirc a captura de binds não 
ocorre com BASIC, só ocorre com valores TYPICAL ou acima Faça uma consulta 
tipo SELECT STATISTICS_NAME, ACTIVATION_LEVEL, SYSTEM_STATUS, 
STATISTICS_VIEW_NAME, SESSION_SETTABLE
FROM v$statistics_level; que vc vai ver
Outra coisa, Quando foi parseado o SQL em questão ??? Tanto o cache de SQL 
quanto os derivados (como os Planos usados para um dado SQL, as estatísticas 
dos planos, as variáveis BIND, etc) não são Ilimitados : funcionam como um 
CACHE, ie, via de regra a informação mais frequentemente usada é que vai estar 
lá, de forma NENHUMA a Oracle garante que TODOS os SQLs já parseados um dia vão 
estar no cache, muito menos os adendos como Planos, Estats dos Planos, Binds

[]s

Chiappa


--- Em oracle_br@yahoogrupos.com.br, Raphael Franco  escreveu
>
> 
> Pessoal,
> 
> Eestou tentando recuperar alguns DML executados no BD junto com o valor das 
> variaveis BIND. Tentei ver na v$sql_bind_capture, tentei executar um trace 
> binds => TRUE.   Nada da certo, ou vem nulo ou  :B1  :B2, etc... 
> 
> 
> Algume sabe algum SQL ou trace que me retorne isso??? Oracle SE 11.2.0.2
> 
> 
> att.
> Raphael
> 
> 
> [As partes desta mensagem que não continham texto foram removidas]
>


 

[As partes desta mensagem que não continham texto foram removidas]



[oracle_br] Re: Sobrecarga de function

2012-10-15 Por tôpico shinabe15
Pensei que somente mudando a assinatura e/ou o tipo do parâmetro já resolveria.
Usando o dono.objeto aparentemente resolveria, mas se for pra mexer no nome do 
objeto é melhor fazer do jeito certo e mudar o nome da function.
Tudo isso é para resolver um problema de obter o sessionid em uma base com rac, 
vamos utilizar o dbms_session.unique_session_id para corrigir, nessa linha 
fariamos uma sobrecarga e implementar a unique_session, mas como nunca fiz 
sobrecarga em função nativa, não saberia como o oracle se comportaria.
Valeu a dica.

--- Em oracle_br@yahoogrupos.com.br, "J. Laurindo Chiappa"  
escreveu
>
>   Pois é, Miltão : mesmo numa sessão nossa, criada pela nossa Aplicação e que 
> só está processando a rotina que escrevemos, em tese A Qualquer Momento o 
> RDBMS pode necessitar chamar as built-ins, sim por qquer necessidade interna, 
> é de se imaginar o monte de coisas erradas que podem ocorrer...
>   Não tem jeito, pra se ter Estabilidade a regra número 1 é considerar o 
> schema SYS e ** todos ** os objetos dentro dele como Anátema, como coisa 
> proibida até de pensar em mexer
> 
>   []s
> 
> Chiappa
> 
> --- Em oracle_br@yahoogrupos.com.br, "Milton Bastos Henriquis Jr." 
>  escreveu
> >
> > É, tem esse detalhe também... rs
> > 
> > Imagina vc sobrepôr uma function interna do Oracle, daí algum processo
> > interno do Oracle precisar chamá-lo,
> > e tem um retorno totalmente inesperado: pimba, o estrago pode ser grande!
> > 
> > 
> > 
> > 2012/10/15 J. Laurindo Chiappa 
> > 
> > > **
> > >
> > >
> > > * NÃO FAÇA ISSO   Salvo Autorização Expressa e Formal do
> > > Suporte Oracle, as funções (e objetos, sinônimos, tudo enfim) que são
> > > internas do RDBMS Não Podem ser Alteradas de modo algum, não podem sofrer
> > > alteração de namespace (por exemplo, criar um sinônimo Público com o nome
> > > delas que aponte pra outro local para as desabilitar, alterar pontos de
> > > entrada, parâmetros, etc), sob pena de Desuporte Imediato do seu database
> > > .
> > >
> > > []s
> > >
> > > Chiappa
> > >
> > >
> > > --- Em oracle_br@yahoogrupos.com.br, "shinabe15"  escreveu
> > >
> > > >
> > > > Olá pessoal, estou com um problema com sobrecarga em function:
> > > > O problema é que preciso fazer a sobrecarga da function mas a function
> > > já existente é nativa do oracle.
> > > >
> > > > userenv('sessionid').
> > > > Fiz a sobrecarga, mas só funciona com o nome do dono do objeto na 
> > > > frente.
> > > > usuario.userenv('sobrecarga').
> > > >
> > > > São muitos os lugares que se necessita alterar e se a sobrecarga
> > > funciona-se da mesma forma convencional seria ótimo.
> > > >
> > > > Funções nativas mesmo com sobrecarga, prevalece a nativa, tem como força
> > > r a function de usuário?
> > > >
> > > > Valeu!!!
> > > >
> > >
> > >  
> > >
> > 
> > 
> > 
> > -- 
> > Att,
> > 
> > 
> > [As partes desta mensagem que não continham texto foram removidas]
> >
>




[oracle_br] Re: Sobrecarga de function

2012-10-15 Por tôpico J. Laurindo Chiappa
  Pois é, Miltão : mesmo numa sessão nossa, criada pela nossa Aplicação e que 
só está processando a rotina que escrevemos, em tese A Qualquer Momento o RDBMS 
pode necessitar chamar as built-ins, sim por qquer necessidade interna, é de se 
imaginar o monte de coisas erradas que podem ocorrer...
  Não tem jeito, pra se ter Estabilidade a regra número 1 é considerar o schema 
SYS e ** todos ** os objetos dentro dele como Anátema, como coisa proibida até 
de pensar em mexer

  []s

Chiappa

--- Em oracle_br@yahoogrupos.com.br, "Milton Bastos Henriquis Jr." 
 escreveu
>
> É, tem esse detalhe também... rs
> 
> Imagina vc sobrepôr uma function interna do Oracle, daí algum processo
> interno do Oracle precisar chamá-lo,
> e tem um retorno totalmente inesperado: pimba, o estrago pode ser grande!
> 
> 
> 
> 2012/10/15 J. Laurindo Chiappa 
> 
> > **
> >
> >
> > * NÃO FAÇA ISSO   Salvo Autorização Expressa e Formal do
> > Suporte Oracle, as funções (e objetos, sinônimos, tudo enfim) que são
> > internas do RDBMS Não Podem ser Alteradas de modo algum, não podem sofrer
> > alteração de namespace (por exemplo, criar um sinônimo Público com o nome
> > delas que aponte pra outro local para as desabilitar, alterar pontos de
> > entrada, parâmetros, etc), sob pena de Desuporte Imediato do seu database
> > .
> >
> > []s
> >
> > Chiappa
> >
> >
> > --- Em oracle_br@yahoogrupos.com.br, "shinabe15"  escreveu
> >
> > >
> > > Olá pessoal, estou com um problema com sobrecarga em function:
> > > O problema é que preciso fazer a sobrecarga da function mas a function
> > já existente é nativa do oracle.
> > >
> > > userenv('sessionid').
> > > Fiz a sobrecarga, mas só funciona com o nome do dono do objeto na frente.
> > > usuario.userenv('sobrecarga').
> > >
> > > São muitos os lugares que se necessita alterar e se a sobrecarga
> > funciona-se da mesma forma convencional seria ótimo.
> > >
> > > Funções nativas mesmo com sobrecarga, prevalece a nativa, tem como força
> > r a function de usuário?
> > >
> > > Valeu!!!
> > >
> >
> >  
> >
> 
> 
> 
> -- 
> Att,
> 
> 
> [As partes desta mensagem que não continham texto foram removidas]
>




RES: [oracle_br] Re: Código de Barras EAN

2012-10-15 Por tôpico Mauricio Roberto Maciel
Veja se essa serve:  :PXCCODBAR => código lido, wkdigito => digito

 

   declare

wksoma  number;

wkdigitonumber;

begin

wksoma :=
to_number(substr(:PXCCODBAR,01,1)) * 1 +

 
to_number(substr(:PXCCODBAR,02,1)) * 3 +

 
to_number(substr(:PXCCODBAR,03,1)) * 1 +

 
to_number(substr(:PXCCODBAR,04,1)) * 3 +

 
to_number(substr(:PXCCODBAR,05,1)) * 1 +

 
to_number(substr(:PXCCODBAR,06,1)) * 3 +

 
to_number(substr(:PXCCODBAR,07,1)) * 1 +

 
to_number(substr(:PXCCODBAR,08,1)) * 3 +

 
to_number(substr(:PXCCODBAR,09,1)) * 1 +

 
to_number(substr(:PXCCODBAR,10,1)) * 3 +

 
to_number(substr(:PXCCODBAR,11,1)) * 1 +

 
to_number(substr(:PXCCODBAR,12,1)) * 3;

wksoma := mod(wksoma,10);

if  wksoma = 10

  then wkdigito := 0;

else

   wkdigito := 10 - wksoma;

  end if;

end;

 

De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em
nome de ederson2001br
Enviada em: segunda-feira, 15 de outubro de 2012 10:16
Para: oracle_br@yahoogrupos.com.br
Assunto: [oracle_br] Re: Código de Barras EAN

 

  

Junior,

Prá EAN eu não tenho pronta, mas vc pode codificar uma a partir do
procedimento encontrado em:
http://www.informaticainteligente.com.br/criar-codigo-de-barras-ean-13-no-ex
cel/
(inclusive o link disponibiliza o arquivo .ttf)

Na página abaixo, vc pode usar a calculadora do site para conferir o valor
gerado pela sua função (lembrando que EAN13 tb é conhecido por GTIN-13),
observando que no pé da página tem um quadro que mostra todos os detalhes do
cálculo passo-a-passo.
http://www.gs1.org/barcodes/support/check_digit_calculator

Ederson Elias
DBA Oracle
http://br.linkedin.com/pub/ederson-elias/24/8b/8b0

--- Em oracle_br@yahoogrupos.com.br 
, Junior  escreveu
>
> Boa tarde Pessoal!
> 
> Alguém pode me ajudar como posso fazer pra validar um código de barras EAN
?
> 
> Existe uma função, etc ?
> 
> 
> Desde já agradeço





[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Re: W7 64bits x Forms 32bits

2012-10-15 Por tôpico Tiago de Assis Pimenta
Bom dia pessoal.

Bom, passei o final de semana tentando as dicas que vocês me passaram e quase 
nenhuma surgiu efeito para o meu caso em especifico.

- Yuri -

Coloquei o path do do forms em primeiro nas variáveis de ambiente e já me 
atentei a verificar se se não tinha espaço. O caminho do forms tanto na VM que 
eu criei quanto aqui no trabalho é "C:\Fontes\Forms", ou seja, sem espaço. O 
UAC já estava desabilitado e assim ficou. Tentei executar com e sem modo de 
compatibilidade e nada também.

- Chiappa -

Criei a VM como tinha lhe dito e segui exatamente como está no link que você me 
passou, instalei o JRE 1.6.0 update 33, configurei a memória virtual e rodei o 
setup em modo de compatibilidade e mesmo assim, deu o erro.

- All -

O que fiz também, levando em consideração o que o Yuri disse (Dos espaços), foi 
tentar alterar o caminho padrão do windows para instação dos arquivos de 
programas, no W7 32 é instalado no "C:\Program Files", já no W7 64, só os 
programas 64bits são instalados nessa pasta, os programas 32bits são instalados 
no "C:\Program Files (x86)", tentei mas não consegui fazer essa mudança, mas 
redigindo aqui o email acho que também não resolveria, já que o W7 32bits não 
tem essa separação de pastas e mesmo assim não funcionou o forms nele.

Estamos baixando o patch para atualizar o Oracle Forms Version 10.1.2.0.2 para 
10.1.2.3.0 (5983622) e outro patch (7047034).

Por enquanto é isso, quem tiver mais alguma luz, dica, ou qualquer outra coisa 
que nos de uma luz, será bem vindo.

Att.

Tiago Pimenta


 De: J. Laurindo Chiappa 
Para: oracle_br@yahoogrupos.com.br 
Enviadas: Sábado, 13 de Outubro de 2012 12:17
Assunto: [oracle_br] Re: W7 64bits x Forms 32bits
 

  
Tiago, seguinte :

- todo e qquer tipo de patch a Oracle não permite redistribuição (absolutamente 
não é freeware), então acho MUITO difícil que vc o consiga legalmente em qquer 
outra fonte, afaik não tem como vc obter de outro lugar que não seja o Site de 
Suporte da Oracle : dada a Imperiosa exigência (uma necessidade absoluta) de 
ter os binários patcheados o mais correntemente possível se vc quer ter um *** 
mínimo  de Estabilidade nesse ambiente, não tem outro jeito, vc TEM que ou 
requisitar que o DBA (ou seja quem for que tenha o acesso) baixe o patch OU que 
ele crie uma conta para vc no metalink , permitindo que vc baixe. Se for 
necessário envolver algum gerente/Diretor/whatever que seja, o importante é que 
vc Tem que deixar claro que patches do tipo são condição sine qua non para que 
vc tenha um mínimo de Estabilidade, sem eles vc VAI estar em alto grau sijeito, 
volta e meia , a ter seu trabalho interrompido por conta de GPFs/telas
 azuis/fechamentos aleatórios, não tem como não ser assim...
Não que o patch Impossibilite algo assim, mas ele via de regra conserta as 
condições mais coumns, tornando eventos do tipo mais raros, embora não 
impossíveis...

- eu quis dizer que, uma vez feita a instalação da versão-base com o programa 
setup.exe (que dispara o Oracle Universal Installer), antes de vc mesmo tentar 
abrir um Forms ou fazer seja qual tarefa for, é recomendado que vc patcheie 
essa ORACLE_HOME , é isso

[]s

Chiappa

--- Em oracle_br@yahoogrupos.com.br, Tiago de Assis Pimenta  
escreveu
>
> -- Chiappa --
> 
> Vou criar uma VM aqui em casa e tentar do jeito que você falou. Quanto ao 
> metalink, infelismente só o DBA da empresa que tem acesso e ele, vamos dizer, 
> é uma pessoa que coloca muito empecilho e não podemos contar com ele, então 
> se você ou outra pessoa que tiver acesso ao metalink e puder me enviar ou 
> upar ele para que eu posso pegar, eu agradeceria muito.
> 
> Não entendi a parte de aplicar o patch antes do setup. O setup aqui seria a 
> instalação do developer 10.2.0.2 ?
> 
> O gerenciamento de memória na maquina já está manual, está com tamanho 
> inicial em 256Mb e máximo eu não me recordo. Instalei o forms em modo de 
> compatibilidade WXP SP2 e não ocorreu nenhum problema. Tentei rodar o forms 
> sem modo de compatibilidade e também com modo de compatibilidade, em ambos dá 
> o erro.
> 
> O mais estranho é que não é algo que acontece em todos os forms que a gente 
> abre, usamos um forms chamado padrão.fmb e dele "importamos" algumas coisas, 
> quando abrimos ele, não dá erro de jeito algum. Agora se abrir outro forms, 
> tem hora que dá e tem horas que não dá erro.
> 
> -- Yuri --
> 
> Rapaz, esqueci das váriaveis de ambiente, vou fazer isso aqui na VM que vou 
> criar. Tomara que seja isso.
> 
> Vou verificar o path do forms também e o UAC já está desabilitado. Modo de 
> compatibilidade também não é, pois tentei executar ele já dessa maneira, mas 
> vou seguir as dicas suas e a do Chiappa e volto aqui para informa-los.
> 
> Obrigado gente.
> 
> 
> 
>  De: Yuri Menon 
> Para: oracle_br@yahoogrupos.com.br 
> Enviadas: Quinta-feira, 11 de Outubro de 2012 22:06
> Assunto: Re: [oracle_br] Re: W7 64bits x F