SET_ITEM_PROPERTY :: Ajuda !!!

Dicas do Oracle Forms Builder - Blocos, Itens, LOV, Canvas, Triggers, comandos, PLL, d2kwutil, FMB, Alert, menus, etc
Responder
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

Pessoal, bom dia.
Preciso de um help...

Por favor, vejam se alguém já passou por uma situação desta:

Tenho um BLOCO, com 05 linhas, sendo:

DESCRICAO_NF CHK_NF

Onde, descrição é um TEXT_ITEM e, CHK_NF,um check-box.


Questão:


Quando eu clicar num check-box, quero que desabilite o text-item, mas, somente aquele.

O que já realizei e não deu certo?

Já fiz o LOOP nos objetos, vendo quem estava marcado e, tentando desabilitar somente este....

Mas... pelo que percebi:

SET_ITEM_PROPERTY, não verifica o índice, ou seja, DESABILITA TODOS OS OBJETOS!!!!


Queria desabilitar somente o da linha que chequei.

Alguma dica????


Muito obrigado mesmo.
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

My Friend...
Apresento-lhe o comando SET_ITEM_INSTANCE_PROPERTY
Leia sobre ele que você encontrará suas respostas.
Basta você alterar as propriedades UPDATE_ALLOWED e INSERT_ALLOWED para o item em questão :-o
Editado pela última vez por dr_gori em Sex, 27 Abr 2007 10:16 am, em um total de 1 vez.
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

Valeu mesmo brother (deu certinho).

Realmente desconhecia estas propriedades/comandos.

Muito obrigado.
Avatar do usuário
Toad
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 253
Registrado em: Sex, 18 Nov 2005 2:14 pm
Localização: Seattle, WA
Contato:
Matheus Gonçalves
matheus.dev
twitter.com/developer__c

Só pra ajudar:

Selecionar tudo

--Syntax

SET_ITEM_INSTANCE_PROPERTY
  (item_id   ITEM, 
   record_number  NUMBER,
   property  NUMBER,
   value     VARCHAR2); 

SET_ITEM_INSTANCE_PROPERTY
  (item_name  VARCHAR2, 
   record_number  NUMBER,
   property   NUMBER, 
   value      VARCHAR2);

SET_ITEM_INSTANCE_PROPERTY
  (item_name  VARCHAR2, 
   record_number  NUMBER,
   property   NUMBER, 
   value      NUMBER);
BORDER_BEVEL Specifies the item border bevel for the specified item instance. Valid values are RAISED, LOWERED, PLAIN (unbeveled), or " ". A value of " " causes the border bevel to be determined by the value specified at the item level at design-time or by SET_ITEM_PROPERTY at runtime.
Note: You cannot set BORDER_BEVEL if the item's Bevel property is set to None in Form Builder.

INSERT_ALLOWED Applies only to records not retrieved from the database. When set to PROPERTY_TRUE at the item instance, item, and block levels, allows the end user to modify the item instance. Setting this property to PROPERTY_FALSE at the item instance, item, or block levels, prohibits the end user from modifying the item instance.

NAVIGABLE When set to PROPERTY_TRUE at the item instance and item levels, allows the end user to be able to navigate to the item instance using default keyboard navigation. Setting this property to PROPERTY_FALSE at the item instance or item levels, disables default keyboard navigation to the item instance.

REQUIRED Specify the constant PROPERTY_TRUE if you want to force the end user to enter a non-null value for the item instance. Setting this property to PROPERTY_FALSE at the item instance and item levels, indicates that the item instance is not required.

UPDATE_ALLOWED Applies only to records retrieved from the database. When set to PROPERTY_TRUE at the item instance, item, and block levels, allows the end user to modify the item instance. When set to PROPERTY_FALSE at the instance, item, or block levels, prohibits the end user from modifying the item instance.

VISUAL_ATTRIBUTE Specify a valid named visual attribute that exists in the current form or ''. Specifying '' leaves visual attribute unspecified at the item instance level.
prmjunior13
Rank: Estagiário Júnior
Rank: Estagiário Júnior
Mensagens: 1
Registrado em: Qui, 09 Dez 2010 7:41 am
Localização: Gaspar-SC
Paulo Roberto Martins Junior
Desenvolvedor Oracle

Olá,
Preciso de ajuda!
Tenho a seguinte situação:

Dois blocos PEDIDO e ITEM_PEDIDO, quando usuário seleciona um CHECK deve-se habilitar 2 campos obrigatórios no ITEM_PEDIDO.
Uso as propriedades dos campos como NO
Required
Navigable
Enable
Visible

Ao Mostrar os campos na tela passo as propriedades para TRUE com SET_ITEM_PROPERTY

Também ao habilitar os campos, um campo já existente no bloco vai receber um novo valor.

Para isso uso o seguinte código:

Selecionar tudo

SET_ITEM_PROPERTY('CAMPO',REQUIRED,PROPERTY_FALSE);
SET_ITEM_PROPERTY('CAMPO',ITEM_IS_VALID,PROPERTY_TRUE);	
               --
               first_record;
               loop
                --
               :BLOCO.CAMPO  := 1;
                --
         
                  IF :SYSTEM.LAST_RECORD = 'TRUE' THEN
               	   last_record;
              	   exit;
                  END IF;	 
	                  --
                  next_record;
                  end loop;
                          --
SET_ITEM_PROPERTY('CAMPO',REQUIRED,PROPERTY_TRUE);
SET_ITEM_PROPERTY('CAMPO',ITEM_IS_VALID,PROPERTY_FALSE);
Tudo ocorre bem até ai...

Mas quando estou no first_record do bloco ITEM_PEDIDO e vou gravar( só permito gravar se estiver no Bloco PEDIDO) caso os campos
habilitados estejam nulos o WHEN-VALIDATE-ITEM é disparado corretamente.

O problema é que só acontece no registro em que o cursor está... se digito nos campos requeridos somente do primeiro registro e vou tentar salvar mesmo os campos requeridos dos proximos registros do bloco NULO grava.

Preciso que todos registros sejam validados..

Já tentei usar o SET_ITEM_PROPERTY dentro do loop mas ele não sai do primeiro registro e morre no loop...

Por ser uma consulta, já tentei mudar o STATUS dos campos Set_Record_Property para NEW_STATUS e nada

Mas não consigo entender o motivo de não validar todos os registros do bloco..

Qualquer ajuda é válida.

Obrigado.
Responder
  • Informação
  • Quem está online

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