Escolar Documentos
Profissional Documentos
Cultura Documentos
Sumrio
1. Oracle Forms................................................................................................................... 4 1.1 Tipos de Mdulos ..................................................................................................... 4 1.2 Mdulo Form ............................................................................................................ 4 1.3 Abrindo uma sesso Oracle Forms Builder .............................................................. 5 1.4 Criando um novo mdulo form................................................................................. 6 1.5 Conectando-se ao banco ........................................................................................... 6 1.6 Trocando o nome de um mdulo form ..................................................................... 7 2. Blocos ............................................................................................................................. 7 2.1 Criando um bloco...................................................................................................... 8 2.2 Especificando a criao de um bloco de controle..................................................... 8 2.3 Especificando a criao de um bloco baseado em uma origem de dados, usando a Data Block Wizard.......................................................................................................... 8 2.4 Escolha do tipo de origem de dados ......................................................................... 9 2.5 Especificao da origem dos dados do tipo Table or View .................................... 10 2.6 Etapa final da criao do bloco de dados................................................................ 11 2.7 Usando o Layout Wizard para especificao dos itens do bloco............................ 12 2.8 Funcionalidades da criao de um bloco Base Table ............................................. 17 2.9 Removendo um bloco ............................................................................................. 18 2.10 Propriedades de um bloco..................................................................................... 18 2.11 Salvando um mdulo form.................................................................................... 20 2.12 Executando um mdulo form................................................................................ 20 3. Relacionamento entre Blocos ....................................................................................... 22 3.1 Criando um relacionamento entre dois Blocos ....................................................... 22 3.2 Construindo um mdulo form mestre detalhe ........................................................ 22 3.3 Executando um mdulo form mestre detalhe ......................................................... 23 3.4 Propriedades de relacionamento ............................................................................. 23 4. Frames........................................................................................................................... 25 5. Itens tipo Texto ............................................................................................................. 26 5.1 Criando um item tipo texto ..................................................................................... 26 5.2 Propriedades de um text item.................................................................................. 26 5.3 Alterando cores e fontes.......................................................................................... 26 5.4 Controlando os dados em um text item................................................................... 27 5.5 Formatando itens..................................................................................................... 27 5.6 Alterando o comportamento de navegao............................................................. 28 5.7 Alterando o relacionamento do item com o banco de dados .................................. 28 5.8 Adicionando funcionalidades a um item................................................................. 29 5.9 Adicionando funes de grupo e frmulas a um item ............................................ 29 5.10 Labels associados do item..................................................................................... 30 6. LOVs e Editores............................................................................................................ 31 6.1 Conceito de Lista de Valores (LOV) ...................................................................... 31 6.2 Utilizando uma LOV em momento de execuo.................................................... 31 6.3 Definindo uma Lista de Valores (LOV) ................................................................. 31 2
6.4 Criando uma Lista de Valores (LOV)..................................................................... 32 6.5 Propriedades da LOV.............................................................................................. 33 6.6 Mapeamento colunas da LOV para itens do bloco ................................................. 34 6.7 Associando uma LOV a um item tipo texto............................................................ 34 6.8 Conceito de Editor .................................................................................................. 34 6.9 Utilizando um Editor em momento de execuo.................................................... 35 6.10 Associando um Editor a um item tipo texto.......................................................... 35 7. Outros tipos de Itens ..................................................................................................... 36 7.1 Check-box ............................................................................................................... 36 7.2 Passos para criar um item tipo Check-box no Layout Editor ................................. 36 7.3 Propriedades especficas de um item tipo Check-box ............................................ 37 7.4 Tratando valores nulos em itens tipo Check-box.................................................... 37 7.5 List .......................................................................................................................... 37 7.6 Criando um item tipo List ....................................................................................... 38 7.7 Propriedades especficas de um item tipo List........................................................ 38 7.8 Tratando valores nulos em itens tipo Lista ............................................................. 39 7.9 Radio Groups .......................................................................................................... 39 7.10 Propriedades especficas de um item tipo Radio Groups...................................... 40 7.11 Tratando valores nulos em um Radio Groups....................................................... 40 8. Itens tipo No Input ...................................................................................................... 42 8.1 Itens tipo Display .................................................................................................... 42 8.2 Itens tipo Button...................................................................................................... 42 9. Windows, Canvas e Viewport....................................................................................... 44 9.1 Propriedades de uma Window ................................................................................ 44 9.2 Conceito de content canvas..................................................................................... 44 9.3 Stacked canvas ........................................................................................................ 45 9.4 Canvas Toobar ........................................................................................................ 45 9.5 Tab Canvas.............................................................................................................. 45 10. Triggers ....................................................................................................................... 46 10.1 Trigger Type ......................................................................................................... 46 11. Produzindo Triggers.................................................................................................... 47 11.1 Criando uma Trigger pelo Object Navigator ........................................................ 47 11.2 Suplementando validaes.................................................................................... 47 13. Executando um Form no modo Debug ....................................................................... 49 14. Respondendo a interaes com itens .......................................................................... 50 15. Triggers de Consulta ................................................................................................... 51 15.1 Trigger PR-QUERY ........................................................................................... 51 15.2 Trigger POST-QUERY......................................................................................... 51 15.3 POST-QUERY e WHEN-VALIDATE-ITEM ..................................................... 52 16.Validaes.................................................................................................................... 52 16.1 Utilizando LOVs para validaes ......................................................................... 53 16.2 Utilizando Triggers para Validaes .................................................................... 53 17. Aplicaes Multi-Form............................................................................................... 54 17.1 Buit-in OPEN_FORM .......................................................................................... 54 17.2 Built-in CALL_FORM ......................................................................................... 54
1. Oracle Forms
Oracle Forms o principal produto do Developer/2000. Com o Form Builder possvel: Criar aplicaes que utilizem diversos de dados, e principalmente o banco de dados Oracle. Construir aplicaes rapidamente utilizando os Wizards. Construir aplicaes que so portveis para vrios ambientes. Facilmente copiar ou mover objetos e suas propriedades entre os componentes e as aplicaes. Usar tipos familiares e comuns de ferramentas Developer/2000, como editor de layout, navegador abjetos e ambiente PL/SQL de desenvolvimento.
Canvas - a superfcie onde os objetos visuais esto arranjados. Um mdulo Form pode ter vrios canvas. Por default todos os canvas ficam na mesma janela, mas podemos alocar janelas separadas para cada canvas.
Quando um form executado, a navegao feita atravs dos seus contedos por meio de itens e blocos, no por canvas. Cada item tem uma posio seqenciada dentro do bloco, e cada bloco tem uma posio seqenciada no form. Para mover para o prximo item do bloco, o foco ser mudado para o prximo item da seqncia, esteja ele onde estiver. Se o prximo item est em um canvas diferente, ento este canvas ser mostrado automaticamente. Similarmente, podemos mover para o prximo bloco (ou bloco anterior). Se o primeiro item neste bloco reside em um outro canvas, ento aquele canvas mostrado automaticamente. Se j sabes o item que vai ser movido, ento a aplicao pode permitir que voc clique diretamente com o mouse. Tambm pode-se programar comandos dentro da aplicao para permitir a navegao em outros modos.
Para abrir uma sesso, siga os seguintes passos: Clicar Iniciar/Programas/Oracle Forms/Form Builder
2. Blocos
Bloco o dono lgico de um tem , os armazena e contm propriedades que afetam ao funcionamento dos quais. Um bloco pode ser de controle, sem ser baseado uma origem de dados ou ser Base Table, baseado uma tabela, view ou array.
2.3 Especificando a criao de um bloco baseado em uma origem de dados, usando a Data Block Wizard
Tela de boas vindas do Data Block Wizard
Um dilogo avisando que o Wizard ir criar um bloco com especificaes que devem ser preenchidas nos prximos dilogos.
10
1. Escolha o tipo da origem de dados do bloco, tabela ou view, caso no saiba, pressione o boto Browse e escolha uma opo da lista; 2. Mova as colunas que deseja incluir no bloco, as arrastando ou atravs dos botes; 3. Marque o CheckBox Enforce data integruty, para quando criar um bloco, tambm criar triggers relativas as constraints de controle de banco; 4. Clique no boto Next para seguir para a prxima pgina do Assistente, ou Finish para concluir as opes at aqui.
1 3 2
Create the data Block, then call the Layout Wizard: aps criar o bloco executa o Assistente de criao de Layout; Just create the data block: no executa o Assistente de Layout, deixando para que o usurio faa mais tarde.
Selecione em qual canvas deseja posicionar os dados do bloco: Selecione um Canvas j existente na lista; Ou (New Canvas: criar um novo canvas
13
Seleo do estilo dos prompts em relao aos itens Form: Label esquerda do Item; 14
Especificao do scrollbar e argumentos de agrupamento de tela Frame Titler: Descrio ddo frame envolvendo os dados do bloco. Records Displayed: Nmero de records mostrados no bloco. 15
Distance Between Records: Espaamento entre os records do Item. Display Scrollbar Check Box: Se o bloco deve possuir uma barra de rolagem dos registros.
Concluso das especificaes de gerao de itens do bloco E finalmente e mostrada um pgina de concluso bastando pressionar o boto Finish.
16
Gera SQL no momento de execuo (SQL implcito) para inserir, atualizar, apagar e pesquisar linhas na base table, baseada nas aes do usurio. No momento de execuo pode ser usado chaves de funo padro, botes, ou opes de menu para iniciar pesquisa, inserir, atualizar ou apagar dados na tabela base, e as subseqentes de transao.
18
Descrio Determina como uma operao Next Item ou Previous Item, processada quando o foco est no ltimo item navegvel ou no primeiro item navegvel no bloco respectivamente. Aplica-se a blocos. Descrio
Records Properties
Current Record Especifica o atributo visual nomeado usado quando um item parte Visual Attribute do registro atual. Aplica-se a form, block e item. Group Number of Records Especifica o nmero mnimo de registros em buffer de memria Buffered durante uma pesquisa em um bloco. Default = NULL; que indica que o mnimo valor permitido o valor definido para a propriedade Records Displayed + 3. Number of Records Especifica o nmero mximo de registros que um bloco pode Displayed mostrar de uma vez. O padro 1. Definir o nmero mximo de registros exibidos para mais de 1, cria um registro multi-bloco. Especifica se todos os registros seguindo o critrio de pesquisa, Query All Records devero ser trazidos para o data block quando uma pesquisa executada. Aplica-se a blocos. Database Properties Descrio
Database Data Block Define se o bloco baseado em tabela, procedure, transactional trigger ou sub-query Define se aplicaes e usurios finais podem fazer pesquisas no Query Allowed bloco. Query Data Source Especifica o nome da origem de dados para pesquisa no bloco. Essa Name propriedade vale quando o tipo tabela, sub-query ou procedure. WHERE clause As propriedades padro WHERE Clause e ORDER BY Clause ORDER BY clause especificam clusulas standard SQL clauses para o comando padro SELECT associado a um data block. Essas clusulas so automaticamente incorporadas ao comando Select que o Form Builder constri e emite sempre que o operador da aplicao executa uma pesquisa no bloco. Define se registros podem ser inseridos no bloco. Insert Allowed Update Allowed Delete Allowed Define se registros podem ser atualizados no bloco. Especifica se registros podem ser apagados do bloco.
Descrio Define se deve ser criada uma scroll bar para o bloco que est 19
sendo criado. Canvas no qual a Scroll Bar deve ser exibida. Tab Canvas onde a scroll bar aparece.
20
21
o Ao mostrar lista de blocos selecione o bloco mestre; o Se necessrio corrija a condio de join.
Ao alterar as propriedades de uma relao o comportamento das delees e das coordenaes afetado. Segue as principais propriedades: Master Deletes Propriedade Non Isolated Cascading Uso Previne a deleo do registro do bloco mestre quando registros detalhes para esse mestre existem. Deleta os registros detalhes em cascata quando o registro mestre deletado. Obs.: a mensagem de Commit mostra somente o nmero de registros deletados do bloco mestre, embora os registros detalhe tambm sejam deletados. Deleta somente o registro mestre.
Isolated
Fora a coordenao dos blocos de maneira a sempre que o registro mestre for trocado os correspondentes registros detalhes sero apresentados. Deferred with Auto Adia a consulta dos registros detalhes associados ao registro mestre Query de maneira que eles sejam consultados automaticamente no momento em que o cursor se posicionar no bloco detalhe. Deferred winhout Adia a consulta dos registros detalhes associados ao registro mestre Auto Query de maneira que eles sejam consultados no momento em que o cursor se posicionar no bloco detalhe e for executada uma consulta no bloco detalhe. Provent Masterless Garante que um bloco detalhe no pode ser consultado ou utilizado Operations para insero de registros quando no existe um registro mestre. Join Condition Propriedade Condio de join Uso Condio de ligao entre blocos. Obs.: utilize nomes de blocos e itens ao invs de nomes de tabelas e colunas na expresso de condio
24
4. Frames
Frames o dono lgico de um grupo de itens do bloco, no canvas, onde pode-se referenciar os itens deste bloco diretamente pelo frame, podendo assim dimensiona-los, e preenche-los automaticamente na rea do mesmo. Tambm possvel setar algumas propriedades comuns nos itens do mesmo, pelo frame.
Frame
4.1 Propriedades de um frame Propriedade Name Update Layout Nome do frame. Forma de controle do frame com os itens englobados por ele: Automatically: dimenciona e controla os itens automaticamente, ao setar propriedades no frame, repassado aos itens e bloco; Manually: o frame passa a no mais fazer efeito nos respectivos itens e bloco, mas o Layout Wizard consegue alter-lo; Locked: o frame passa a no mais fazer efeito nos respectivos itens e bloco, e o Layout Wizard no consegue altera-lo. Estilo de Layout: Form: Label esquerda do item; Tabular: Label cima do item. Descrio
Layout Style
25
Custom Named
hh:mi:[ss] $$DBTIME$$ - hora do Banco de dados no formato hh:mi:[ss] Exemplo de utilizao de itens do mdulo form: :PEDIDOS.CODIGO Exemplo de utilizao de valores de seqncias: :SEQUENCE.PEDIDOS_CODIGO_SQ.NEXTVAL
Determina se o item permite a insero de valores. Esta propriedade se aplica somente para novos registros. Determina se o item permite a utilizao de critrios de consulta sobre ele. Determina se o item permite atualizao somente quando o valor corrente nulo (NULL). Esta propriedade se aplica somente a registros j existentes.
Min: Valor mnimo Stddev: Desvio padro Sum: Soma Variance: Varincia Especifica o bloco no qual ser executada a funo de grupo Especifica o item no qual ser executada a funo de grupo
Para sumarizar um item deve-se seguir o seguinte critrio: O item sumarizado deve estar no bloco do sumarizados O item sumarizado deve estar em um bloco de controle, o qual deve possuir a propriedade Single Record para Yes, e o bloco sumarizado deve estar com a propriedade Query All Records como Yes
30
6. LOVs e Editores
LOVs e Editores so objetos em um mdulo form que cada um abre sua prpria janela quando ativados no momento de execuo. Eles so definidos em nvel form, o que significa que podem ser usados para suportar itens em qualquer bloco do mdulo form.
31
LOV lista de valores propriamente dita. Apresenta os valores, a partir do Record Group, que podero ser selecionados e passados para os itens do form. Text Itens item tipo texto do form associado a lista de valores (LOV), a partir do qual a lista de valores poder ser chamada.
32
33
com um critrio de pesquisa antes da LOV ser chamada. Este critrio utilizado como restrio adicional na primeira coluna da clusula SELECT
Display Width
Column Title
Um Editor um tipo de objeto utilizado para prover ao operador um editor customizado para itens multi-line, ou seja, um editor permite que o operador veja mltiplas linhas de um item de texto simultaneamente, search-and-replace (busca e modifica) texto no item, e geralmente, modifica um valor de um item a partir desta janela separada. Todo item de texto tem o editor padro disponvel, mas possvel desenhar o seu prprio editor para modifixaes para aqueles itens que tem requisitos especiais. Prevalecendo o editor padro para um item de texto pode-se: Prover uma janela de edio grande para itens com valores textuais potencialmente grandes; Pcionalmente usar um sistema editor externo.
35
36
Descrio Determina o tipo de dado do item. Define o label e o Prompt adjacente ao item Check Box. Especifica o valor que est associado ao estado checked do item. O valor deve ser compatvel com a Data Typo especificado. Value when Especifica o valor que est associado ao estado Unchecked Unchecked do Item. O valor deve ser compatvel com o Data Type especificado. Check Box Mapping of Determina como outros valores so processados em uma Other Values consulta, quando os registros forem diferentes dos valores associados Checked e Unchecked: Not Allowed so ignorados. Checked so associados a Checked e se forem salvos convertidos para este valor. Unchecked so associados a Unchecked e se forem salvos sero convertidos para este valor.
7.5 List
Um List Item um objeto de interface que exibe uma seleo de opes prdefinidas, cada uma correspondendo a um valor de dados especfico. Usa-se o item da lista em tempo de execuo para selecionar um valor simples. Escolha da Lista ou elementos so mutuamente exclusivos, um e somente um selecionado por vez. Os trs estilos de List Itens so: Estilo Pop List Descrio Item com um boto icnico conjugado do lado direito. Clique no Pop List para ver a lista de elementos pr-definidos. No
37
permitida a digitao de valores. Item com um scroll bar conjugado ao lado direito. Utilize o scroll bar para ver a lista de elementos. Item com um boto icnico ao seu lado direito, mas no conjugado. Clique no boto para ver a lista de elementos. Permite a digitao de valores.
Descrio Determina o tipo de dado do item. Determina o estilo de interface da lista. Escolha entre PopList, T-List ou Combo-Box. Mapping of Other Determina como os outros valores so processados. Escolha Values entre: Deixar o valor em branco ignora outros valores alm dos definidos na lista. No processamento de consultas, os registros com valores diferentes dos associados lista so ignorados. Associar com o um dos elementos da lista ou definir um valor no processamento de consultas, os registros com valores diferentes dos associados lista so associados ao elemento da lista especificado. Se forem salvos os valores sero convertidos para o valor associado. Elements in List Clique no boto More... para abrir o dilogo List Elements. List Elements especifica o label do elemento da lista. List Item Value especifica o valor associado ao elemento corrente da lista de elementos.
Miscellaneous Descrio Properties Data Type Determina o tipo de dado do item. Mapping of Other Determina como os outros valores so processados. Escolha Values entre: Deixar o valor em branco ignora outros valores alm dos definidos na lista. No processamento de consultas, os registros com valores diferentes dos associados aos Radio Buttons so ignorados. Associar com o nome de um Radio Button ou definir um valor no processamento de consultas, os registros com valores diferentes dos das lista so associados ao Radio Button especificado. Se forem salvos sero convertidos para o valor associado ao elemento da lista..
Se a coluna em que o item est baseado permite velores nulos voc pode trat-los: Criando explicitamente um elemento da lista associado ao valor nulo (null); Deixando a propriedade Ignore Mapping of Other Values no preenchida; Associando Ignore Mapping of Other Values com um dos Radio Buttons pelo seu nome ou pelo valor especificado.
41
42
43
Descrio Habilita o boto close da janela, mas, para execut-lo necessrio. Determina se o usurio pode mover a janela em momento de execuo. Determina se o usurio pode minimizar a janela. Especifica o ttulo da janela quando minimizadas.
Modal
Descrio Especifica o nome do canvas a ser mostrado na janela quando esta chamada por programa. Determina o estilo da janela. Escolha entre: Document a janela deve estar sempre dentro da MDI parent Window. Dialog a janela pode ser movimentada ou ser redimensionada para fora da MDI parent Window. Determina se a janela do tipo Modal, caso contrrio esta ser do tipo Modeless.
Um Content Canvas um canvas que a base para uma janela, ocupando todo o seu contedo. Geralmente criado pelo menos um Content Canvas para cada janela em sua aplicao. Somente um content canvas pode ser mostrado em uma janela por vez, em momento de execuo.
45
10. Triggers
Uma Trigger uma unidade de programa que executada (disparada) quando ocorre um evento. O Oracle Forms permite a contruo de poderosas facilidades sem a necessidade de escrever cdigo. Uma Trigger permite adicionar e modificar a funcionalidade de um mdulo de uma forma procedural de maneira que processos datalhados de aplicao possam ser definidos. Toda trigger est associada a um evento especfico. O Oracle Forms possui uma grande variedade de eventos que associam-se a uma trigger. As Triggers so escritas em PL/SQL como nas demais ferramentas do Developer/2000. Componentes de um Trigger. Componentes Trigger Type Trigger Code Trigger Scope Descrio Tipo de Triggers: especifica o evento que far com que a trigger dispare. Corpo de Trigger: bloco PL/SQL que define a ao a ser executada pela trigger. Escopo da Trgger: determina o escopo sobre o qual os eventos sero detectados pela trigger. Nvel em que a trigger est definida.
46
11. Produzindo Triggers 11.1 Criando uma Trigger pelo Object Navigator
No Navigator, selecione a entrada Triggers embaixo do Form, do Bloco ou do Item que a trigger deve estar associada. O objeto que voc escolher determinar o escopo da trigger e os tipos de triggers disponveis. Clique no cone Create, ou selecione o menu Program -> SmartTriggers, dever mostrar um lista das triggers apropriadas para o objeto corrente. Escolha o tipo de Trigger de uma lista de valores. Para ajudar a selecionar o tipo de Trigger tambm pode utilizar alm da LOV o recurso de auto reduo teclando as letras iniciais dos nomes da trigger. Entre com o cdigo PL/SQL da trigger no Source Pane do Editor.
48
49
50
SELECT COUNT (*) INTO :pedidos.total_de_itens FROM itens WHERE codigo_do_pedido = :pedidos.codigo;
16.Validaes
52
53
54
A Built-in CALL_FORM emite um SAVEPOINT antes de passar o controle para o form chamado, de modo a preservar os Locks no form chamado causar um Rollback. CALL_FORM til para iniciar outro form quando a ao tem que ser completada antes que o form chamador possa continuar. Opcionalmente o form chamado pode ser iniciado em modo Query Only. Sintaxe: CALL_FORM (nome_do_form, DISPLAY , SWITCH_MENU , QUERY_MODE , lista_de_parametros); Argumentos: Parmetro Descrio Nome_do_form Nome do arquivo executvel do mdulo (sem o sufixo .FMX). O Path default do Oracle Forms utilizado, a menos que fornea como parte do string de caracteres. DISPLAY HIDE: default, define que o form chamador deve ser escondido enquanto o form chamado estiver executando. NO_HIDE: define que o form chamador no deve ser escondido enquanto o form chamado estiver executando. QUERY_MODE NO_QUERY_ONLY: default. QUERY_ONLY: define que o form chamado deve executar em modo Query Only. SWITCH_MENU NO_REPLACE: o forms chamado deve usar o seu prprio menu. DO_REPLACE: o forms chamado deve usar o menu corrente.
55