Académique Documents
Professionnel Documents
Culture Documents
1
2.12. ............................. ........................................................... ......................................................... ............. 24
2.13. HIDDEN ............... .............................. ........................................... .............................. ................. 24
2.14. MSG .......................................................... ............................. .............................. ........................ 25
2.15. NOACCEPT ........................................................... ......................................................... ............. 25
2.16. NOCHECK ............................ ............... ............................................ ............... ............................. 25
2.17. NOCONFIRM ................ ............... ........................................................... .................................... 25
2.18. NOREAD .............................. ............... ............................................ ............... ............................. 26
2.19. NOPROMPT ............... .............................. ............................. .............................. ........................ 26
2.20. ORDER ......................................................... ................ ........................................... ................ .... 26
2.21. PARM ............................. ............... .......................................................... ............... ...................... 26
2.22. PRINTER .............................. ............... ............................................ ............... ............................. 27
2.23. PROMPT ............................................ ........................................... .............................. ................. 27
2.24. REFCALL ............................. ............... ............................................ ............... ............................. 27
2.25. REFMSG ............................................ ........................................... .............................. ................. 27
2.26. SEARCH ............................................ ........................................... .............................. ................. 28
2.27. SERIAL ......................................................... ................ ........................................... ................ .... 28
2.28. SUBMIT ............... .............................. ........................................... .............................. ................. 28
2.29. SUBTRACT ........................................................... ......................................................... ............. 28
2.30. WORKFILE_LINES ........................................................................ ............... ............................. 29
2.31. XORDER............................................ ........................................... .............................. ................. 29
3. Funções Disponíveis no GeneXus ............................................................................................................ 30
3.1.
3.2. DAY ................
MONTH ...........................................
............................. ................ ..........................................................
............... .......................................................... ............ 30
............... ...................... 30
3.3. YEAR ......................................................... ................ ......................................................... ............. 31
3.4. TODAY .............................. ............... .......................................................... ............... ...................... 31
3.5. NOW( ) .......................................................... ............................. .............................. ........................ 31
3.6. HOUR, MINUTE, SECONDS ............... ........................................... .............................. ................. 31
3.7. DOW ............... ........................................... ................ ......................................................... ............. 32
3.8. CDOW ............................. .............................. ............................. .............................. ........................ 32
3.9. CMONTH ........................... ............... ........................................................... .................................... 32
3.10. CTOD ............................. ............... .......................................................... ............... ...................... 32
3.11. CTOT..................................... ............... ............................................ ............... ............................. 33
3.12. DTOC ............................. ............... .......................................................... ............... ...................... 34
3.13. TTOC..................................... ............... ............................................ ............... ............................. 34
3.14. YMDTOD ............................. ............... ............................................ ............... ............................. 35
3.15. YmdHmstoT ........................................................... ......................................................... ............. 35
3.16. ADDMTH ............................. ............... ............................................ ............... ............................. 35
3.17. ADDYR ......................................................... ................ ........................................... ................ .... 36
3.18. AGE ............................. .............................. ............................. .............................. ........................ 36
3.19. EOM .......................................................... ............................. .............................. ........................ 36
3.20. TDIFF ............................. ............... .......................................................... ............... ...................... 36
3.21. TADD ............................. ............... .......................................................... ............... ...................... 37
3.22. ASK ............................. .............................. ............................. .............................. ........................ 37
3.23. UDF ............................. .............................. ............................. .............................. ........................ 37
3.24. UDP ............................. .............................. ............................. .............................. ........................ 37
3.25. ROWS ............................ ............... .......................................................... ............... ...................... 38
3.26. COLS .............................. ............... .......................................................... ............... ...................... 38
3.27. TIME .............................. ............... .......................................................... ............... ...................... 38
3.28. SYSTIME .............................. ............... ............................................ ............... ............................. 39
3.29. SYSDATE ............................. ............... ............................................ ............... ............................. 39
3.30. USERCLS ............................. ............... ............................................ ............... ............................. 39
3.31. USERID......................................................... ................ ........................................... ................ .... 39
3.32.
3.33. WRKST .........................................................
STR......................................................... ................
................ ........................................... ................
......................................................... .... 39
............. 40
3.34. SUBSTR ............... .............................. ........................................... .............................. ................. 40
3.35. CONCAT............................................ ........................................... .............................. ................. 40
2
3.36. SPACE............................ ............... .......................................................... ............... ...................... 41
3.37. LEN ............................. .............................. ............................. .............................. ........................ 41
3.38. TRIM .............................. ............... .......................................................... ............... ...................... 41
3.39. LTRIM............................ ............... .......................................................... ............... ...................... 41
3.40. RTRIM ........................... ............... ........................................................... .................................... 42
3.41. UPPER............................ ............... .......................................................... ............... ...................... 42
3.42. LOWER ......................................................... ................ ........................................... ................ .... 42
3.43. INT ......................................................... ................ ......................................................... ............. 42
3.44. ROUND ......................................................... ................ ........................................... ................ .... 43
3.45. TRUNC ......................................................... ................ ........................................... ................ .... 43
3.46. VAL ............................. .............................. ............................. .............................. ........................ 43
3.47. COLOR ......................................................... ................ ........................................... ................ .... 43
3.48. RGB ............................. .............................. ............................. .............................. ........................ 43
3.49. NULL ............................. ............... .......................................................... ............... ...................... 44
3.50. NULLVALUE ................ ............... ........................................................... .................................... 44
3.51. LOADBITMAP ............................. ........................................................... .................................... 44
3.52. OLD ............................. .............................. ............................. .............................. ........................ 45
3.53. PREVIOUS ........................... ............... ............................................ ............... ............................. 45
3.54. AFTER ........................... ............... ........................................................... .................................... 45
3.55. LEVEL ........................... ............... ........................................................... .................................... 46
3.56. INSERT/UPDATE/DELETE ............... ............................................ ............... ............................. 46
4.
5. Operadores Disponíveis
Variáveis Internas no GeneXus
do GeneXus ....................................................................................................... 47
................................................................................................................ 48
5.1. TODAY .............................. ............... .......................................................... ............... ...................... 48
5.2. TIME ............... ........................................... ................ ........................................................... ........... 48
5.3. PAGE...................... ........................................... ................ ........................................... ................ .... 48
5.4. LINE ................ ........................................... ................ ......................................................... ............. 48
5.5. OUTPUT ............................ ............... .......................................................... ............... ...................... 48
5.6. PGMDESC ............... .............................. ........................................... .............................. ................. 49
5.7. PGMNAME............................................ ........................................... .............................. ................. 49
5.8. MODE ............................. .............................. ............................. .............................. ........................ 49
6. Propriedades do GeneXus ........................................................................................................................ 50
6.1. VISIBLE ............................. ............... .......................................................... ............... ...................... 50
6.2. TOLLTIP ............................ ............... .......................................................... ............... ...................... 50
6.3. CAPTION ........................... ............... ........................................................... .................................... 51
6.4. ENABLE ............................ ............... .......................................................... ............... ...................... 51
6.5. ACTIVEPAGE ........................................................... ......................................................... ............. 51
6.6. PAGECOUNT ........................... ............... ............................................ ............... ............................. 52
6.7. BACKCOLOR, FORECOLOR ......................................................... .............................. ................. 52
6.8. TOP, LEFT ............... .............................. ........................................... .............................. ................. 52
6.9. FILLSTYLE .............................. ............... ............................................ ............... ............................. 53
6.10. FILLCOLOR ............... .............................. ............................. .............................. ........................ 53
6.11. DEFAULT ............................. ............... ............................................ ............... ............................. 53
6.12. BITMAP ............... .............................. ........................................... .............................. ................. 54
6.13. BACKSTYLE......................................................... ......................................................... ............. 54
6.14. FONTNAME ............... .............................. ............................. .............................. ........................ 54
6.15. FONTITALIC, FONTUNDERLINE, FONTBOLD, FONTSTRIKETHRU ............................... 55
6.16. FONTSIZE ............................ ............... ............................................ ............... ............................. 55
6.17. WIDTH, HEIGHT .............................. ............................. ............................................ ................. 55
6.18. TITLE ............................. ............... .......................................................... ............... ...................... 56
6.19. WINDOWSTATE .............................. ............................. ............................................ ................. 56
6.20. LINESELECTOR .......................................... ................ ........................................... ................ .... 56
6.21.
6.22. REDRAW ..............................
TITLEFORECOLOR, ............... ............................................
TITLEBACKCOLOR ............... ............................. 57
..............................................................................
6.23. TAG ............................. .............................. ............................. .............................. ........................ 57
6.24. BORDERSTYLE .......................................... ................ ........................................... ................ .... 58
3
7. Eventos de Controle ................................................................................................................................. 58
7.1. DBCLICK ......................................................... ................ ........................................... ................ .... 58
7.2. CLICK ............................. .............................. ............................. .............................. ........................ 58
7.3. ISVALID ............................ ............... .......................................................... ............... ...................... 59
7.4. RIGHTBUTTON ................ ............... ........................................................... .................................... 59
8. Métodos ............................ .............................. ............................. ............................................ ................. 60
8.1. SETFOCUS ............................................ ........................................... .............................. ................. 60
8.2. REPAINT ........................... ............... ........................................................... .................................... 60
8.3. CLEAR, ADDITEM...................... ................ ............................. .............................. ........................ 60
8.4. REMOVEITEM ............................................ ............................. .............................. ........................ 61
8.5. LOAD ......................................................... ................ ......................................................... ............. 61
8.6. SORT ............... ........................................... ................ ........................................................... ........... 62
8.7. PRINTFORM ............................ ............... ............................................ ............... ............................. 62
8.8. REFRESH ......................................................... ................ ........................................... ................ .... 62
9. Propriedades do Modelo Principal ........................................................................................................... 63
9.1. PREFERÊNCIAS ............... ............... ........................................................... .................................... 63
MAXIMUN NUMERIC LENGHT.................. ............................................ ............... ............................. 63
FUNCTIONS...................................................... ................ ......................................................... ............. 64
TIME FORMAT........................... ............................. ................ ........................................... ................ .... 64
9.2. GERADORES ........................... ............... ............................................ ............... ............................. 65
9.3. MODEL FORMS ............... ............... ........................................................... .................................... 65
10.9.4. Propriedades
PROMPTS ......................................................... ................ ........................................... ................ .... 66
das Transações ................................................................................................................ 67
10.1. TRANSACTION INTEGRITY – INTEGRIDADE TRANSACIONAL .................................. 67
COMMIT ON EXIT................... ............... ........................................................... .................................... 67
CONFIRM TRANSACTION ............................. ................ ......................................................... ............. 68
10.2. USER INTERFACE – INTERFACE COM USUÁRIO .............................................................. 69
CONFIRMATION ............................ ............... ............................................ ............... ............................. 69
WINDOWS INTERFACE ................ ............... ............................................ ............... ............................. 69
MenuBar ............... .............................. ........................................... .............................. ................. 69
•
CHARACTER
GenerateINTERFACE
• as a Popup Window – INTERFACE DE CARACTERES ........................................................ 71
....................................................................................................... 71
Automatic Border – Color ............................................................................................................ 72
•
•
Menu
Update.......................................................... ............................. ..............................
Mode ............... .............................. ............................. .............................. ........................
........................ 76
75
• Cancel ............................. ............... .......................................................... ............... ...................... 76
• Delete Mode ........................................................... ......................................................... ............. 76
4
• Select .............................. ............... .......................................................... ............... ...................... 76
• First Record ........................... ............... ............................................ ............... ............................. 77
• Display Mode ............................................ ............................. .............................. ........................ 77
• More Keys ............................. ............... ............................................ ............... ............................. 77
11. Propriedades das Work Panels ............................................................................................................. 78
11.1.
LOAD LOADING
RECORDS.............................
............................ ............... ............................................ ............... ............................. 78
LOAD AT STARTUP ................ ............... ........................................................... .................................... 78
ALLOW USER TO CANCEL WHILE LOADING ................................................................................ 79
AUTOMATIC REFRESH......................... ........................................................... .................................... 79
REFRESH TIMEOUT (Foxpro for Windows e Visual Basic) ................................................................. 79
11.2. WINDOWS INTERFACE ............................ ................ ........................................... ................ .... 80
MENUBAR ............................. .............................. ............................. .............................. ........................ 80
BORDER STYLE ............................. ............... ............................................ ............... ............................. 80
MAXIMIZE BUTTON ............................. ........................................................... .................................... 80
MINIMIZE BUTTON ................ ............... ........................................................... .................................... 81
FORM ICON .............................. ............... .......................................................... ............... ...................... 81
CONTROL BOX ............................................ ........................................... .............................. ................. 81
MODAL DIALOG ............................ ............... ............................................ ............... ............................. 81
11.3. CHARACTER INTERFACE ............... ............................................ ............... ............................. 82
GENERATE AS A POPUP WINDOW ............ ................. ........................................................... ........... 82
AUTOMATIC BORDER .......................................... ................ ........................................... ................ .... 83
Automatic Border – Color ............................................................................................................ 83
•
5
Refresh Key ........................... ............... ............................................ ............... ............................. 92
•
6
1. Comandos GeneXus
7
• Uma Variável
• Uma Constante
• Uma Função (permitido quando uma associação é utilizada)
• Uma Expressão Aritmética (Data e tipo Numérico somente)
1.3. Call
(Transação, Procedure, Relatório, Work Panel)
CALL([‘]Pgmname[‘],[parm1,parm2,...]
1.5. Commit
(Procedure, Relatório, Work Panel)
Commit
8
1.6. Confirm
(Transação, Work Panel)
Confirm(‘msg’ | &<Var> [,Y | N])
Mostra uma mensagem e aguarda até o usuário informar ‘Sim ou ‘Não.
Mostra o texto/variável (‘msg’ /&<var>, respectivamente) em uma janela
(ou linha de mensagem, dependendo do ambiente de trabalho) e aguarda uma
resposta do usuário que pode ser ‘Sim’ ou ‘Não’. Em ambiente AS/400 os
valores possíveis são F12=Cancel ou Reject e Enter=Accept ou Confirm. Para
saber se o operador confirmou ou rejeitou a mensagem, a função
CONFIRMED( ) é usada.
1.7. Delete
(Procedure)
Delete
NOTA:
• Se o comando DELETE é especificado em um grupo que contenha
grupos aninhados, os dados do grupo corrente podem ser usados
dentro dos grupos aninhados, embora eles não serão fisicamente
deletados.
• Recomendação: primeiro exclua os níveis internos antes dos externos.
Isto evita qualquer possível cancelamento ou travamento do registro.
9
1.8. Do ‘Nome Subrotina’
(Transação, Procedure, Relatório, Work Panel e Web Panels)
DO ‘RoutineName’
1.9. Do While
(Transação, Procedure, Relatório, Work Panel e Web Panels)
Do while <Cond>
Enddo
Serão
enquanto executados
a condição <Cond>todos os comandosPara
for verdadeira. entre o DO
forçar WHILE
a saída e o ENDDO
do grupo do DO
WHILE pode ser usado o comando EXIT.
1.10. Eject
(Procedure, Relatório)
Eject
Este comando força um salto de página no programa gerado, quando a
saída selecionada está associada a impressora, ou limpa a tela quando a saída
está associada a tela.
1.11. Error_Handler
(Transação, Procedure, Relatório, Work Panel)
Implementado para tratamento de erros para Client/Server.
10
1.12. Exit
(Transação, Procedure, Relatório, Work Panel)
Exit
O comando Exit permite abandonar um grupo For Each, Xfor Each ou Do
While. O próximo comando a ser executado após um exit é o próximo comando
após o comando EndFor, XendFor ou EndDo correspondente ao grupo que
contém o comando Exit.
NOTA: O comando Exit não é valido dentro de um FOR EACH LINE.
1.13. Footer
(Procedure, Relatório)
Footer
End
Define as linhas de rodapé a serem impressas no final de cada página.
Os comandos entre a cláusula FOOTER e a cláusula END são executadas
quando chega-se ao final da página. FOOTERS podem também ser definidos
com um FOR EACH dentro, da mesma forma como HEADERS pode.
Se existirem linhas de impressão entre o FOOTER e o END, elas irão ser
impressas dentro da margem inferior (parâmetro MB). Se as linhas de
FOOTER não couberem dentro da área da margem inferior a impressão irá
continuar na próxima página.
11
resolve o problema de COMO encontrá-los. A maneira COMO GENEXUS vai
efetuar a navegação pode ser vista no relatório de Especificação. Para forçar
uma saída de um grupo FOR EACH você pode usar o comando EXIT.
Existem dois tipos de tabelas associadas a um grupo FOR EACH:
•
Uma TABELA BASE.
• Tabelas que podem ser alcançadas pela Tabela Base, conhecidas como
Tabelas Estendidas.
Se existirem atributos que não façam parte da Tabela Base nem das
Tabelas Estendidas irá aparecer uma mensagem de erro no relatório de
Especificação e o programa não será gerado.
CLÁUSULA ORDER
ORDER < Lista de Atributos >
CLÁUSULA WHERE
WHERE <Condição>
12
CLÁUSULA DEFINED BY
DEFINED BY < Lista de Atributos >
Este comando permite definir a Tabela Base de um grupo FOR EACH -
ENDFOR.
Geralmente quando se está definido Procedures/Reports/Work Panels,
os atributos dentro do FOR EACH determinam a Tabela Base. Algumas vezes,
os atributos dentro do grupo não determinam exatamente a Tabela Base (ex.:
mais de uma tabela pode ser encontrada como Tabela Base). Assim é
necessário declarar um grupo para determinar qual a Tabela Base que tem mais
prioridade, informando uma Lista de Atributos na cláusula DEFINED BY.
1.17.
(Work Graph
Panel)
graph([‘<GraphName>’,][<List>
13
Permite gerar um gráfico a partir das informações contidas no Subfile.
Isto pode somente ser utilizada por programas gerados para Foxpro for
Windows ou Visual Basic. Quando gerado no Foxpro for Windows, o programa
MS-GRAPH (Incluído no Foxpro for Windows) é executado sempre que esse
comando for localizado.
• conteúdo do subfile é usado como o dado para o gráfico e o usuário pode
escolher qual o tipo de gráfico que será usado. É possível alterar os valores,
imprimir o gráfico e vê-lo em 3D, etc. Este comando irá armazenar todas as
definições do gráfico (portanto o Graph Wizard não precisa ser usado
todas as vezes).
Onde:
• <GraphName> corresponde ao caminho e nome para o arquivo que
contém o gráfico.
Se o será
Wizard arquivo correspondente
chamado. Uma vez aoquegráfico não existir,
o gráfico o Graph
é definido você
precisará salvá-lo com o mesmo nome usado em <GraphName>. Se você
quiser modificar a definição do gráfico você precisa dar um duplo
clique sobre a janela do gráfico.
• <List> é uma lista com os atributos e variáveis do Subfile que devem
ser incluíds no gráfico. O eixo X pode receber qualquer type variável
(caractere, data ou numérico) e todas as outras variáveis precisam
ser numéricas (eixo Y).
1.18. Header
(Procedure, Relatório)
Header
End
14
1.19. If
(Transação, Procedure, Relatório, Work Panel)
If <Cond>
[Else]
Endif
Executam um bloco de comando se a condição for avaliada como
verdadeira.
1.21. Load
(Work Panel)
Load
Esteé comando
Ela bastanteforça
usadaa carga
quandodeo uma nova
Work linhanão
Panel dentro do subfile.
tem uma tabela Base, e
consequentemente a carga precisa ser feita “na mão” ou quando precisamos
fazer filtros com atributos de várias tabelas.
15
1.23. Margin Top
(Procedure, Relatório)
MT <nlines>
Define o número de linhas em branco no topo da página.
1.24. Message
(Transação, Procedure, Relatório, Work Panel)
Msg(‘msg’ | &<var> [,nowait] [,status])
16
1.26. NoSkip
(Procedure, Relatório)
NoSkip
Inibe salto de linhas de impressão consecutivas.
Este comando precisa ser colocado imediatamente após o print block.
Configura
O número odetamanho
linhas da
quepágina
serãopara Reports/Procedures.
impressos é o número especificado por
<nlines>, menos a margem inferior (valor default é 6).
1.29. PrinterCommand
(Procedure, Relatório)
PrnCmd <\Onn | String>
17
1.30. Refresh
(Work Panel)
Refresh [Keep]
Atualiza as informações mostradas no subfile.
Opção KEEP:
Este parâmetro indica que quando o comando Refresh for executado, o
Subfile será posicionado sobre o registro que estava em foco anteriormente.
1.31. Return
(Transação, Procedure, Relatório, Work Panel)
Return
Encerra o programa e retorna a execução ao programa que o chamou.
1.32. RollBack
(Transação, Procedure, Relatório, Work Panel)
RollBack
1.33. Submit
(Transação, Procedure, Relatório, Work Panel)
SUBMIT(‘Usr-pgm’,’SubmitParms’[<Parm1> <Parm2> ...])
18
1.34. Subroutine
(Transação, Procedure, Relatório, Work Panel)
Sub ‘RoutineName’
EndSub
Este comando é similar ao comando XFOR EACH, porém ele não fica em
loop. Ele retorna o primeiro registro (se existir um registro) de um arquivo
externo utilizando o índice especificado e filtrando dados de acordo com a
condição declarada na opção WHERE.
1.37. Xnew
(Procedure)
Xnew ‘<FileName>’ Xendnew
19
O comando XNEW insere um registro em um File View (arquivo externo).
2.1. ACCEPT
(Transações)
Accept(&variável, Atributo);
Esta Regra permite aceitação de uma Variável em Tela.
A ordem da entrada do valor para a Variável em um Nível, dependerá da
posição das Variáveis e dos Atributos na Tela.
20
2.2. ADD
(Transações)
Add( Atributo1, Atributo2) if Condição;
2.3. ALLOWNULLS
(Transações)
Allownulls( Atrib1, Atrib2, ..., AtribN )
Esta regra é usada para permitir valores NULOS para atributos nos
quais são feitos verificação da integridade referencial.
2.4. <ASSIGN>
(Transações, Relatório/Procedimentos)
Atributo | &Variável = Expressão IF Condição;
21
&Pgm = ‘WProg’
Call(&Pgm, &V1,&V2);
2.6. COLOR
(Transações, Work Panels)
Color( <gxcolor> ); //Permite a definição das cores default para tela.
2.7. DEFAULT
(Transações, Procedimentos/Relatórios, Work Panels)
22
Default( Atributo, xxx);
É usadaPode
Ação: paraser
forçar um modo
uma das específico
seguintes: em um
INSERT, Nível de
UPDATE ou Transação.
DELETE.
Atributo: É usado para indicar o Nível. Se não for especificado nenhum
Atributo, será assumido o primeiro Nível.
2.9. EQUAL
(Transações)
Equal( Atributo, xxx);
2.10. ERROR
(Transações)
Error(‘Texto de Mensagem’) IF Condiçaõ;
23
Esta Regra faz com que a “string” definida em ‘Texto de Mensagem’ seja
apresentada na Janela de Erro da Transação, se a condição for avaliada como
verdade.
Todo processamento subsequente, inclusive outras regras, não serão
executadas. Portanto, se muitas regras estiverem associadas a uma única
condição, a regra Error deverá ser a última, para que as outras possam ser
executadas.
2.11. ERROR_HANDLER
(Transação, Procedure, Relatório, Work Panel)
24
2.14. MSG
(Transações)
Msg(‘Texto de Mensagem’) IF Condição;
2.15. NOACCEPT
(Transações, Work Panels)
Noaccept( Atributo | &Variável) IF Condição;
2.16. NOCHECK
(Transações)
Nocheck( Atributo1, Atributo2, ..., Atributon);
2.17. NOCONFIRM
(Transações)
Noconfirm(Atributo);
25
2.18. NOREAD
(Procedimentos/Relatórios, Work Panels)
Noread(<Att1>,<Att2>,...,<Attn>);
2.19. NOPROMPT
(Transações)
Noprompt( Atrib1, Atrib2, ..., AtribN)
2.20. ORDER
(Work Panels)
Order(<Att1>,<Att2>,...,<Attn>);
2.21. PARM
(Transações, Procedimentos/Relatórios, Work Panels)
Parm( Par1, Par2, ..., Parn);
26
• Quando um Objeto é chamado de outro programa, os
parâmetros recebidos pela regra PARM( ) são considerados
como uma regra Equal.
2.22. PRINTER
(Procedimentos/Relatórios)
Printer(‘<PrinterFile>’);
2.23. PROMPT
(Transações)
Prompt(‘Programa’, Atrib1, Atrib2, ... , AtribN);
2.24. REFCALL
(Transações)
Reffcall(‘Nome_prog’, Atrib1, ... , AtribN);
2.25. REFMSG
(Transações)
Refmsg(‘Texto’, Atrib1, ..., AtribN)
27
Esta regra é usada para mudar as mensagens geradas por GeneXus
quando verificando as Integridades Referenciais em tempo de Inserção ou
Atualização.
Exemplo: Refmsg(‘O CLIENTE NÃO ESTA CADASTRADO’, Clicod);
2.26. SEARCH
(Work Panels)
Search(<Cond>);
Esta regra faz com que o Atributo1 seja incrementado para o valor
contido em Atributo2 mais o valor do Passo, toda vez que um novo registro for
adicionado à Tabela onde Atributo1 esteja.
Se Atributo1 não faz parte do Identificador, o usuário deverá digitar
um valor que não existe, para que Atributo1 assuma o modo INSERÇÃO, e
receba o próximo valor serializado.
2.28. SUBMIT
(Transações)
SUBMIT(‘Usr-pgm’,’SubmitParms’[,<Parm1>,<Parm2>,...])[IF <Cond>];
2.29. SUBTRACT
(Transações)
Subtract( Atributo1, Atributo2) if condição;
28
Esta regra Subtrai o valor de Atributo1 do Atributo2, se a Condição for
avaliada como verdadeira. Esta Subtração leva em conta as operações de
Inserção, Atualização e Remoção.
Exemplo: Subtract( Qtd, Qtdestq);
2.30. WORKFILE_LINES
(Work Panels)
Workfile_lines(<NoLines>);
2.31. XORDER
(Work Panels)
29
3. Funções Disponíveis no GeneXus
3.1. DAY
(Transações, Procedimentos/Relatórios, Work Panels)
Day(<Date>)
Tipo retornado:
Retorna o dia deN(2)
uma data informada. Se <Date> for uma data nula, o
valor 0 será retornado.
3.2. MONTH
(Transações, Procedimentos/Relatórios, Work Panels)
Month(<Date>)
Tipo retornado: N(2)
Retorna o número do mês de uma data informada. Um valor nulo (0) será
retornado se a <Date> não for uma data nula.
30
3.3. YEAR
(Transações, Procedimentos/Relatórios, Work Panels)
Year(<Date>)
3.4. TODAY
(Transações, Procedimentos/Relatórios, Work Panels)
Today( )
3.5. NOW( )
(Transações, Procedimentos, Relatórios, Work Panels, Web Panels)
Now( )
Tipo retornado:
Retorna a data eDatetime
a hora corrente.
31
3.7. DOW
(Transações, Procedimentos/Relatórios, Work Panels)
Dow(<Date>)
3.8. CDOW
(Transações, Procedimentos/Relatórios, Work Panels)
Cdow(<Date>[‘<Language>’])
Tipo retornado:
Retorna o nome C(9)
do dia da semana de uma determinada data na linguagem
selecionada. Espaços serão retornados se o valor de <Date> for inválido.
<Language> deve ser uma das seguintes (caso não seja informada, será
utilizada a linguagem selecionada no ‘Model Properties’):
spa – Espanhol
eng – Inglês
por – Português
ita - Italiano
3.9. CMONTH
(Transações, Procedimentos/Relatórios,
Cmonth(<Date>[ , ‘<Language>’]) Work Panels)
Tipo retornado: C(9)
Retorna o nome do mês da data informada na linguagem selecionada. Se
nenhuma linguagem for selecionada, será utilizada a que estiver definida em
‘Model Properties’.
3.10. CTOD
(Transações, Procedimentos/Relatórios, Work Panels)
Ctod(‘nn/nn/yy’)
32
Converte uma String em Data.
A string de caracteres pode ser ‘mm/dd/yy’ ou ‘dd/mm/yy’ dependendo
da linguagem corrente, onde: mm representa o mês com dois dígitos; dd
representa o dia com 2 dígitos; yy representa a ano com 2 dígitos.
Em ambiente Micro, o valor default depende da linguagem selecionada:
Inglês ‘mm/dd/yy’
Português/Espanhol ‘dd/mm/yy’
3.11. CTOT
(Transações, Procedimentos, Relatórios, Work Panels e Web Panels)
CtoT(‘nn/nn/yy hh[:mm[:ss]][AM|PM]’)
Notas:
• A data e a hora da string de parâmetros devem ser separados por
pelo menos um branco.
• Se qualquer parte da string (data e hora) for omitido, é assumido
nulo.
• Se qualquer parte da string não é válida, o DateTime resultante será
nulo.
• Se não for especificdo nem AM nem PM, o formato 24-horas é
assumido.
33
3.12. DTOC
(Transações, Procedimentos/Relatórios, Work Panels)
Dtoc(<Date>)
3.13. TTOC
(Transações, Procedimentos, Relatórios, Work Panels e Web Panels)
TtoC( <DateTime>[ ,M[ ,N]])
34
• O formato da string retornada é o mesmo da função CtoT, ou seja, a
data depende da preferência ‘Date format in CtoD function’ e a hora
é sempre no formato 24 horas.
3.14. YMDTOD
(Transações, Procedimentos/Relatórios, Work Panels)
Ymdtod(<NExp1>,<NExp2>,<NExp3>)
Retorna a data onde <NExp1> é o ano, <NExp2> é o mês e <NExp3> é o
dia.
<NExp1>, <NExp2> e <NExp3> devem ser expressões numéricas.
3.15. YmdHmstoT
(Transações, Procedimentos, Relatórios, Work Panels e Web Panels)
YmdHmstoT( <NExp1>, <NExp2>, <NExp3> [ , <NExp4> [ ,<NExp5> [ ,<NExp6>]]])
3.16. ADDMTH
(Transações, Procedimentos/Relatórios, Work Panels)
Addmth(<Date>,<NExpression>)
35
Retorna a data referente a adição de <NExpression> meses para <Date>.
Um valor nulo é retornado se <Date> for uma data inválida.
3.17. ADDYR
(Transações, Procedimentos/Relatórios, Work Panels)
Addyr(<Date>,<NExpression>)
Retorna a data correspondente a <Date> mais <NExpression> anos.
3.18. AGE
(Transações, Procedimentos/Relatórios, Work Panels)
Age(<DExpression1>[ ,<DExpression2>])
Retorna a quantidade de anos entre <DExpression1> e <DExpression2>.
Se <DExpression2> não for especificada, a função Today( ) é assumida.
3.19. EOM
(Transações, Procedimentos/Relatórios, Work Panels)
Eom(<Date>)
3.20. TDIFF
(Transações, Procedimentos, Relatórios, Work Panels e Web Panels)
TDiff( <DateTimeExpr1>, <DateTimeExpr2>)
Tipo retornado: Numérico.
Retorna os segundos da diferença entre dois DateTime recebidos como
parâmetros (DateTimeExpr1 – DateTimeExpr2)
Se DateTimeExpr2 for maior que DateTimeExpr1, um valor negativo
será retornado.
36
3.21. TADD
(Transações, Procedimentos, Relatórios, Work Panels e Web Panels)
TAdd( <DateTimeExpr>, <SecondsExpr> )
3.22. ASK
(Transações, Procedimentos/Relatórios, Work Panels)
Ask(‘msg text’)
3.23. UDF
(Transações, Procedimentos/Relatórios, Work Panels)
Udf(‘Usr-Pgm’, Par1, .., Parn)
3.24. UDP
(Transações, Procedimentos/Relatórios, Work Panels)
Udp(‘Usr-pgm’, Paar1, ..., Parn)
37
A função UDP chama um programa que pode USAR TABELAS e retorna
um valor.
Quando o código para o programa ‘UsrPgm’ for escrito, deverá ser
incluído no final da lista de parâmetros, um parâmetro o qual conterá o valor
que será retornado pela função.
Note que a função UDP fecha as tabelas antes da chamada ser feita, e
abre-as novamente após retornar. Se ‘Usr-Pgm’ não usa tabelas, a função UDF
é recomendada para que ganhe performance.
3.25. ROWS
(Procedimentos/Relatórios, Work Panels)
Rows(&Array( ))
3.26. COLS
(Procedimentos/Relatórios, Work Panels)
Cols(&Array( ))
Retorna o número de colunas de um vetor bidimensional.
3.27. TIME
(Transações, Procedimentos/Relatórios, Work Panels)
Time( )
38
3.28. SYSTIME
(Transações, Procedimentos/Relatórios, Work Panels)
Systime( )
3.29. SYSDATE
(Transações, Procedimentos/Relatórios, Work Panels)
Sysdate( )
3.30. USERCLS
(Transações, Procedimentos/Relatórios, Work Panels)
Usercls( )
3.31. USERID
(Transações, Procedimentos/Relatórios, Work Panels)
Userid( )
3.32. WRKST
(Transações, Procedimentos/Relatórios, Work Panels)
Wrkst( )
39
Retorna a identificação da Estação de Trabalho correspondente.
Em ambiente Micro/Lan retorna o conteúdo da variável de ambiente do
DOS, PSTATION. Para habilitar o uso dessa função, você precisa setar esta
variável de ambiente.
3.33. STR
(Transações, Procedimentos/Relatórios, Work Panels)
Str(N1 [ ,N2 [ ,N3]])
3.34. SUBSTR
(Transações, Procedimentos/Relatórios, Work Panels)
Substr(S1,N1,N2)
3.35. CONCAT
(Transações, Procedimentos/Relatórios, Work Panels)
Concat( S1, S2 [ ,S3])
40
Retorna a string resultante da concatenação de S1 e S2 e o separador
S3. Os brancos das strings S1 e S2 são truncados. Se S3 não for especificado,
não serão inseridos separadores.
3.36. SPACE
(Transações, Procedimentos/Relatórios, Work Panels)
Space(<Att | Var | Const>)
Retorna uma string caracter com a quantidade informada de espaços em
branco.
No AS/400, o atributo ou variável que recebe a função, será
completamente
o argumento. preenchido com espaços, independente do valor informado para
3.37. LEN
(Transações, Procedimentos/Relatórios, Work Panels)
Len(S1)
Retorna o número de caracteres de uma expressão.
3.38. TRIM
(Transações, Procedimentos/Relatórios, Work Panels)
Trim(<Str>)
3.39. LTRIM
(Transações, Procedimentos/Relatórios, Work Panels)
LTrim (<Str>)
41
Remove todos os brancos a esquerda da expressão caracter <Str>. Esta
função é especialmente útil para remover os brancos que são inseridos quando
você utiliza a função Str( ) para converter um valor numérico para uma string
caracter.
3.40. RTRIM
(Transações, Procedimentos/Relatórios, Work Panels)
Rtrim(<Str>)
3.42. LOWER
(Transações, Procedimentos/Relatórios, Work Panels)
Lower( <Str>)
Converte
para letras todas as (a
minúsculas letras
– z).maiúsculas
Todos os(Aoutros
– Z) dacaracteres
expressão caracter <Str>
da expressão
permanecerão inalterados.
3.43. INT
(Transações, Procedimentos/Relatórios, Work Panels)
Int( <Exp>)
42
3.44. ROUND
(Transações, Procedimentos/Relatórios, Work Panels)
Round(<NExp1>,<NCte>)
3.45. TRUNC
(Transações, Procedimentos/Relatórios, Work Panels)
Trunc(<NExp1>,<NCte>)
3.46. VAL
(Transações, Procedimentos/Relatórios, Work Panels)
Val(<CExpression>)
3.47. COLOR
(Procedimentos/Relatórios, Work Panels)
Color(<GXColor>);
Color(<GXColor>,[<Att1>|&<Var>]) [IF <Cond>];
Permite o uso de cores para os atributos, variáveis e tela.
(Idem a regra COLOR).
3.48. RGB
(Procedimentos/Relatórios,
RGB( <Red>,<Grn>,<Blu>)Work Panels)
43
Retorna um número representando um valor de cor RGB, dados os 3
seguintes parâmetros:
• Red : Número na faixa de 0 até 255, inclusive, que representa o
componente vermelho da cor.
•
Green : Número na faixa de 0 até 255, inclusive, que representa o
componente verde da cor.
• Blue : Número na faixa de 0 até 255, inclusive, que representa o
componente azul da cor.
Um valor de cor RGB especifica a intensidade relativa de vermelho,
verde e azul para gerar uma determinada cor.
3.49. NULL
(Transações, Procedimentos/Relatórios, Work Panels)
Null(<Att | Var>)
Retorna um valor Boleano ‘true’ se o valor do atributo ou variável for
nulo. O valor nulo para campos do tipo Numérico é zero, e para campos tipo
Caracter e Data é uma string em branco.
3.50. NULLVALUE
(Transações, Procedimentos/Relatórios, Work Panels)
Nullvalue(<Att | Var>)
3.51. LOADBITMAP
(Transações, Procedimentos/Relatórios, Work Panels)
LoadBitmap(< ’FileName’|Att|Var>)
Incorpora Bitmaps no design do Form.
A função LoaBitmap é usada para definir qual bitmap será associada a
uma variável.
44
3.52. OLD
(Transações)
Old(<Att>)
3.53. PREVIOUS
(Transações)
Previous( )
Previous(<Att>)
3.54. AFTER
(Transações)
After(<Event>)
45
Trn
<Att>
Level(<Att>)
Nota: Quando for incluída a regra After em uma regra condicional, a
regra será executada SOMENTE imediatamente após o evento After ocorrer
e em nenhum outro lugar.
3.55. LEVEL
(Transações)
Level(<Att>)
3.56. INSERT/UPDATE/DELETE
(Transações)
Insert
Update
Delete
Retorna Verdadeiro quando a transação está em modo de,
respectivamente, Inserção/Alteração/Deleção, caso contrário retorna Falso.
46
4. Operadores Disponíveis no GeneXus
47
5. Variáveis Internas do GeneXus
5.1. TODAY
(Transações, Procedimentos/Relatórios, Work Panels)
Contém a data do sistema.
Formato: DD/MM/AAAA
5.2. TIME
(Transações, Procedimentos/Relatórios, Work Panels)
5.3. PAGE
(Procedimentos/Relatórios)
Formato : N(4)
Contém a página corrente do Relatório.
5.4. LINE
(Procedimentos/Relatórios)
A variável &Line contém a linha corrente do Relatório, ou Procedimento,
no momento da execução.
Nota: Tome cuidado para não alterar o valor de &Line, porque senão
GeneXus perderá o controle de ejeção.
5.5. OUTPUT
(Procedimentos/Relatórios)
48
5.6. PGMDESC
(Transações, Procedimentos, Relatórios, Work Panels E Web Panels)
5.7. PGMNAME
(Transações, Procedimentos, Relatórios, Work Panels e Web Panels)
Esta variável contém o nome do programa ativo. O nome é o especificado
na opção Information. Tipo é caracter(30).
Exemplo: call(‘Pprocess’, &Pgmname, Parm1, ...);
Suponha que tenhamos a procedure (‘Pprocess’) que é chamado por vários
programas.
chamador. SeEsta procedure
é chamado processa
por vários, nósaspodemos
informações
incluir oconforme o programa
nome do programa na
lista de parâmetros para identificar quem está chamando o procedimento.
5.8. MODE
(Transações)
Formato : C(3)
Permite determinar o modo válido pelo qual a Transação poderá
trabalhar.
Valores válidos: ‘INS´ para inserir
‘ UPD’ para atualizar
´DEL´ para deletar
Nota: O conteúdo de &Mode deve ser letras maiúsculas.
Funciona somente se recebido como parâmetro.
Apesar de não estar disponível na lista de variáveis do GeneXus, ao você
defini-la, independente das características que informar, o formato acima
sempre prevalecerá.
49
6. Propriedades do GeneXus
6.1. VISIBLE
(Tipos de controle: Todos)
6.2. TOLLTIP
(Tipos de controle: Button, Edit, Check Box)
50
6.3. CAPTION
(Tipos de controle: Button, Frame, Text, Radio Button)
6.4.de
(Tipos ENABLE
controle: Button, Edit, Check Box, Radio Button, Combo Box, Subfile,
Frame, Text)
Determina se o controle pode responder aos eventos de usuário.
Valores:
1: (Verdadeiro) Permite o objeto responder aos eventos.
2: (Falso) Impede o objeto de responder aos eventos.
Exemplos: 1) EvtBtn.Enabled = 0 if update;
Este botão é DESABILITADO se estiver em modo Update.
2) Att2.Enabled = 0 if .not. Null(Att1);
Atributo Att2 não pode ser editado se atributo Att1 não
for nulo.
3) subfile.Enabled = 0 if update;
O subfile não pode ser acessado se estiver em modo
Update (Dados no subfile não podem ser modificados).
6.5. ACTIVEPAGE
(Tipos de controle: Tab)
É usada para indicar qual é a página ativa de um tab control. Esta será
“visível” para o usuário.
Exemplo: MyTab.ActivePage = 1 // a primeira página é ativada
51
MyTab.ActivePage = Mytab.Activepage + 1 // move para a
próxima página.
NOTA: esta propriedade não é implementada no gerador Visual Basic 4.0
6.6. PAGECOUNT
(Tipos de controle: Tab)
52
Neste exemplo o form do objeto será mostrado 500 pixels abaixo do
topo da página e 600 pixels à esquerda na execução.
6.9. FILLSTYLE
(Tipos de controle: Retângulo)
6.10. FILLCOLOR
(Tipos de controle: Retângulo)
6.11. DEFAULT
(Tipos de controle: Botão)
53
É utilizado para especificar qual é o botão de comando default.
Valores: 0: Falso
1: Verdadeiro
Somente um botão de comando no form pode ser default. Quando um
botão de comando é setado como verdadeiro, automaticamente todos os demais
botões no form serão setados como Falso.
6.12. BITMAP
(Tipos de controle: Botão e Bitmap)
6.13. BACKSTYLE
(Tipos de controle: Texto)
Determina se um rótulo ou fundo de um objeto é transparente ou opaco.
Valores:
0: Transparente – cor de fundo e qualquer gráfico são visíveis atrás do
controle.
oculta 1:qualquer
Opaco cor
(Default) – a cor
ou gráfico dedele.
atrás fundo do controle preenche o controle e
6.14. FONTNAME
(Tipos de controle: Button, Edit, Check box, Radio Button, Combo Box, Dynamic
Combo Box, Subfile, Column)
Determina a fonte usada para mostrar o texto num controle. Você deve
assinalar uma expressão tipo string especificando o fontname a ser usado.
Exemplo: EvtBtn.fontName = ‘Times New Roman’
Onde EvtBtn é o nome do controle de um botão.
54
Em geral, você deve mudar FontName antes de setar o tamanho e estilo
dos atributos com as propriedades FontSize, FontBold, FontItalic,
FontStrikethru e FontUnderline.
6.16. FONTSIZE
(Tipos de controle: Button, Edit, Check Box, Radio Button, Combo Box, Dynamic
Combo Box, Subfile, Column)
55
Em versões futuras deste gerador, a unidade de escala será pixels.
A unidade de escala para medir largura e altura em Visual FoxPro é
pixels.
Exemplo: foto.Width = 200 (foto é um controle tipo bitmap)
Foto.Height = 200
A dimensão deste controle tipo bitmap será 200 x 200 unidades.
6.18. TITLE
(Tipos de controle: Column)
6.19. WINDOWSTATE
(Tipos de controle: Frame)
6.20. LINESELECTOR
(Tipos de controle: Subfile)
56
6.21. REDRAW
(Tipos de controle: Subfile)
6.23. TAG
(Tipos de controle: Todos)
57
Exemplo: CrtlName.tag = “associated text”
6.24. BORDERSTYLE
(Tipos de controle: Subfile)
Determina o estilo de borda de um subfile.
Valores: 0: None (Sem borda)
1: Fixed Single (borda simples e sem alteração de tamanho).
2: Sizable (Este é o valor default).
3: Fixed Double (Borda 3D e sem alteração de tamanho).
Exemplo: subfile.BorderStyle = 0;
Neste exemplo o subfile não terá borda.
7. Eventos de Controle
7.1. DBCLICK
(Tipos de controle: Bitmap, Text, Edit)
7.2.de
(Tipos CLICK
controle: Bitmap, Column, Text, Radio Button, Check Box, Dynamic
Combo Box, Combo Box, Edit)
58
Ocorre quando o usuário clica o botão esquerdo do mouse sobre o
controle.
Exemplo: Event text.Click
Msg(‘Explained text: .............’)
Endevent
Neste exemplo uma mensagem será exibida quando o usuário clicar sobre
o controle tipo texto chamado “text”.
7.3. ISVALID
(Tipos de controle: Radio Button, Check Box, Dynamic Combo Box, Combo Box,
Edit)
Ocorre quando
Exemplo: a entrada
Event do campo é válida.
CliCode.IsValid
Call(TclientInfo,CliCode)
EndEvent
Neste exemplo quando o usuário informar o código do cliente, outra
transação para digitar as informações da cliente é chamada se o código do
cliente digitado for válido.
7.4. RIGHTBUTTON
(Tipos de controle: Edit)
59
8. Métodos
8.1. SETFOCUS
(Tipos de controle: Edit, Check Box, Radio Button, Combo Box, Dynamic Combo
Box, Button, Subfile, Frame)
8.2. REPAINT
(Tipos de controle: Edit, Check Box, Radio Button, Combo Box, Dynamic Combo
Box, Text, Retângulo)
Este método muda as propriedades do controle.
Exemplo:
Este método é usado para ‘repintar’ o controle se qualquer das suas
propriedades foi modificada, por exemplo cor, fonte, tamanho, etc, e você quer
mostrar as mudanças.
PoNbr.FontBold = 1
PoNbr.Repaint( )
60
Clear: Apaga todos os itens de um Combo Box ou Dynamic Combo Box.
AddItem: Adiciona um novo ítem no fim de um Combo Box ou Dynamic
Combo Box.
Sintaxe: controle.additem(código, descrição[ ,índice])
‘índice é opcional e representa a posição onde o item é inserido.
Se nenhum índice é especificado o ítem é adicionado no fim.
Exemplo: Vamos apagar o conteúdo de um Combo Box antes de adicionar
novos itens da tabela e carregá-lo com todos os países do continente
Americano, o primeiro item será ‘All’ .
&Var.clear( )
&Var.additem(0, ‘All’)
for each
Where continentCod = ‘AME’
EndFor&Var.additem(CountryCod,CountryName)
8.4. REMOVEITEM
(Tipos de controle: Combo Box e Dynamic Combo Box)
8.5. LOAD
(Tipos de controle: Subfile)
Carrega uma nova linha ao subfile de Work Panels e Web Panels. Este
método é o mesmo que o comando Load. Deve ser utilizado dentro do evento
Load como no exemplo:
Event Load
For each InvCode
&InvCode = InvCode
&InvDat = InvDate
&Type = “INV”
61
.....
sfl_1.Load( )
Endfor
EndEvent
Este método é muito útil quando você tem mais de um subfile no form
(esta feature será liberada em versões futuras). Neste caso você especifica
para qual subfile a linha deve ser carregada.
sfl_1.Load( ) or sfl_2.Load( )
8.6. SORT
(Tipos de controle: Subfile)
8.7. PRINTFORM
(Tipos de controle: Frame)
8.8. REFRESH
(Tipos de controle: Frame e Subfile)
62
Este método é muito útil se você tem mais de um subfile no form (esta
feature será liberada em versões futuras). Neste caso você pode especificar
qual subfile você quer realizar o refresh:
Sfl_1.Refresh( ) or sfl_2.Refresh( )
Também pode ser utilizado para atualizar valores de qualquer atributo.
9.1. PREFERÊNCIAS
63
• Atributos e variáveis não são verificados quando este valor é
modificado para um valor menor que 18, assim, é recomendável
verificar se o novo valor é correto.
FUNCTIONS
Esta preferência é usada quando você deseja utilizar funções que não
são explicitamente suportadas pelo GeneXus.
Esta preferência somente é válida quando os objetos são salvados. (Essa
preferência nos modelos de prototipação e produção será validada na
especificação).
Assim, você poderá salvar um objeto que utilize uma função não standard
se esta preferência no modelo de design estiver setada como “Allow standard
functions only”.
Valores:
• Allows standard functions only on saving: (Permite somente funções
standard) Somente funções standard suportadas pelo GeneXus
podem ser utilizadas.
• Allows non-standard functionsnon saving: (Permite funções não-
standard) Funções são documentadas pelo GeneXus podem ser
utilizadas.
Valor default: Allows standard functions only on saving.
TIME FORMAT
Controla o formato no qual a parte das horas dos atributos tipo Date
Time são pedidos e mostrados (tanto na tela quanto na impressão). Também
controla o tamanho dos atributos/variáveis do tipo Date Time.
Esta preferência é definida na Base de Conhecimento (design) mas, cada
modelo pode ter um valor diferente para a mesma.
Valores:
• Language dependent: depende da linguagem selecionada de acordo
com a tabela seguinte:
Linguagem Formato da Hora
Inglês
Espanhol 12
24 horas
horas
Português 24 horas
64
Italiano 24 horas
• Valor default: depende da linguagem.
NOTA: Se o uso do formato 12 Horas é especificado ou inferido, de
acordo com a linguagem selecionada, os campos terão 3 caracteres a mais (tela
ou impressora) correspondendo às strings ‘AM’ ou ‘PM’.
9.2. GERADORES
Neste diálogo você pode definir todos os tipos de geradores que você
usará nos modelos para gerar seus programas.
Escolha o botão New Type para adicionar um tipo novo, você deve definir
um nome para o novo tipo de gerador. Todos os tipos de geradores definidos
aqui irão aparecer na lista de geradores possíveis (Generators Tab) em cada
modelo da Base de Conhecimento. Então em cada modelo você assinalará um
gerador em particular (ex.: Visual Basic, RPG, etc.).
Há 2 tipos de geradores pré-definidos: Default (usado como default na
geração dos programas) e Reorg (usado para reorganização das base de dados)
cujos nomes não podem ser mudados.
Tecle o botão Delete Type para apagar o tipo de gerador selecionado. Se
o tipo de gerador selecionado estiver sendo usado em qualquer modelo você não
será capaz de apagá-lo (uma mensagem de erro será mostrada).
Você pode definir mais de uma tela para projetos que utilizem forms
(Transação/Work Panels). Na especificação você pode escolher um dos forms
definidos, dependendo do modelo. Cada modelo tem uma lista de Form Classes
válidas.
A lista do lado esquerdo inclui todas as forms classes existentes na Base
de Conhecimento, com os botões de Add e Remove você pode selecionar quais
forms irá utilizar no modelo corrente.
Há duas forms classes pré-definidas: G – Gráfica e T – Texto.
Estas não podem ser apagadas ou renomeadas. A lista do lado direito é
específica para cada modelo.
65
9.4. PROMPTS
Você pode setar a opção de prompt. Aqui você indicará como os atributos
para os quais GeneXus gera prompts, deverão aparecer nos Forms.
A opção especificada aqui somente terá validade para os atributos
definidos como EDIT.
Se você selecionar Design Model Settings, o que foi setado no modelo de
design será utilizado no modelo corrente.
• Button Prompt: O atributo aparecerá com uma seta para cima ao lado
do mesmo.
•
Colored Prompt:
você escolher O opção,
esta atributoa cor
aparecerá com uma
especificada aquicor
terádiferente. Se
preferência
sobre qualquer cor especificada para este atributo em qualquer form.
66
10. Propriedades das Transações
COMMIT ON EXIT
67
Commit on Exit = YES Commit on Exit = NO
O que mostra o exemplo acima é que uma vez dado entrada nos dados na
primeira transação, nós iremos imediatamente dar entrada nos dados da
segunda TRN. Mas nós queremos unificar as duas TRNs para que formem uma
única LWU (Unidade Lógica de Trabalho), para fazer isso é necessário:
• A primeira transação deve ter uma CALL chamando a segunda, antes que o
commit seja executado.
• Remover o COMMIT da segunda TRN usando a propriedade – Commit on
Exit = NO – para que o COMMMIT da primeira TRN faça o COMMMIT em
ambas como um todo após o retorno do CALL.
NOTA:
- É válido somente em transações que não tenham a propriedade do
AS/400 – Commitment = Disabled – neste caso a propriedade será
ignorada.
-
Também seránas
desabilitada ignorada se o controle
propriedades da integridade
do modelo transacional
– Transactional Integrityfor=
NO. Esta propriedade somente aparecerá se o gerador que você
estiver usando permitir este tipo de controle. (Foxpro for Windows
não mostrará esta opção).
CONFIRM TRANSACTION
YES – Força
Trabalho) ou uma confirmação
transação. Nestea nível
caso, deo LWU (Unidade
usuário Lógica de
pode confirmar
(COMMIT) ou não (ROLLBACK) as alterações feitas na base de dados
durante a LWU.
• NO – Nenhuma confirmação da LWU é pedida e automaticamente é
executado o comando COMMIT.
O valor default depende do gerador.
NOTA:
• É válido somente em transações que não possuam nem a propriedade
“Commit on Exit = YES” nem “Commitment = Disabled”. No caso de
qualquer uma delas existir, a propriedade “Confirm Transactions =
YES” será ignorada.
68
• Também será ignorada se o controle da integridade transacional for
desabilitado nas propriedades do modelo – “Transactional Integrity
= NO”.
CONFIRMATION
WINDOWS INTERFACE
• MenuBar
Esta propriedade é usada para associar um menubar a um objeto. Em
outras palavras, o objeto usará o menubar indicado nesta propriedade. O
Combo mostrará todos os menubars existentes.
Se um objeto não tiver um menubar associado, então um menubar
default será utilizado.
Esta propriedade é válida somente para Transações e Work Panels.
• Border Style
69
Valores:
- Sizeable: este é o tipo normal de borda, que é: 3D e você pode mudar
o tamanho da janela com o mouse.
- None: a janela não terá borda nem título.
- Fixed Single: a janela terá borda simples e seu tamanho não poderá
ser mudado.
- Fixed Dialog: a janela terá borda 3D e seu tamanho não poderá ser
mudado.
O valor default é Sizeable.
• Maximize Button
Especifica se o form deve ter um botão de maximização. Válido somente
para geradores: Visual Basic e Visual Foxpro.
Valores:
- YES: o form terá botão de maximização
- NO: o form não terá botão de maximização
O valor default é YES.
• Minimize Button
Especifica se o form deve ter um botão de minimização. Válido somente
para geradores: Visual Basic e Visual Foxpro.
Valores:
- YES: o form terá botão de minimização
- NO: o form não terá botão de minimização
O valor default é YES.
• Form Icon
Esta propriedade é utilizada para especificar um nome para o ícone do
form. Válido somente para geradores: Visual Basic e Visual Foxpro.
Valores: Não possui nenhum valor pré-definido, você deve informar o nome do
ícone.
• Control Box
70
Valores:
- YES: o menu será ativado com um click do mouse.
- NO: o menu não será ativado com um click do mouse.
O valor default é YES.
• Modal Dialog
Esta propriedade é usada para indicar se o objeto utiliza diálogo Modal
ou não.
Diálogo Modal significa que o programa chamador ficará inativo até que o
objeto chamado seja fechado. Ao contrário, o diálogo Não-Modal ambos os
objetos ficam ativos ao mesmo tempo, quer dizer, você pode trabalhar com
ambos simultaneamente.
Diálogo Não-Modal é sempre melhor que diálogo modal, mas nem sempre
é possível utilizá-lo. Em particular, quando são passados parâmetros e o objeto
chamado retorna valores ao objeto chamador, então o diálogo Modal deve ser
usado. Os prompts são um exemplo típico desse tipo de diálogo, onde a
transação espera valores retornados pelo prompt.
Valores:
- YES, if parameters specified: Se o objeto tem parâmetros então o
diálogo Modal será usado, se não houver parâmetros então o diálogo
Não-modal será usado.
- YES: Diálogo Modal é utilizado.
- NO: Diálogo Não-Modal é utilizado.
O valor default é: YES, if parameters specified.
71
- YES, user defined border: O form será gerado como janela popup e a
borda pode ser desenhada pelo usuário no form. Este valor só é válido
para geradores de interface gráfica.
O valor default depende do gerador selecionado.
NOTA: Quando a tela é definida como popup, há algumas limitações de
linhas e colunas que devem ser respeitados. Se a tela desenhada ultrapassa
esses limites, uma mensagem é dada dentro do relatório de navegação na
especificação.
IMPORTANTE: Esta propriedade não é válida para geração em ambiente
windows.
• Automatic Border – Color
Esta propriedade é usada para controlar a cor da borda da janela dos
objetos definidos como janelas popup no AS/400.
Valores:
- Default to color rule: Segue a cor da regra color se a mesma existir.
Caso contrário, VERDE é utilizado.
- Verde
- Branco
- Vermelho
- Amarelo
- Azul
- Cinza, esta é a cor no GeneXus. No AS/400 é convertido para
Turquesa.
- Magenta, esta é a cor no GeneXus. No AS/400 é convertido para Pink
(rosa).
O valor default é: Default to color rule.
-- Blinking: Piscando
No display: Não mostrar.
O default é: Default to color rule.
72
• Automatic Border – Characters
Esta propriedade é usada para definir os caracteres a serem usados
para cada um dos cantos e lados da janela do objeto definido como janela
popup no AS/400. Deve ter exatamente 8 caracteres. Cada caracter é usado
para desenhar (em ordem):
Caracter Desenha
1 topo-esquerdo-canto
2 topo-borda
3 toopo-direito-canto
4 esquerda-borda
5 direita-borda
6 Botão-esquerdo-canto
7 Botão-borda
8 Bptão-dirieito-canto
Estes caracteres são enviados diretamente à palavra chave
WDWBORDER da DDS language para telas. Para obter informações adicionais
sobre esta palavra chave, procure no manual de referência da DDS.
Não há valor default para esta preferência. Isto é, se nenhum valor for
especificado na preferência, os atributos de tela dependerão dos valores
default do AS/400.
NOTA: Não use o caracter ‘ (apóstrofo) nesta propriedade.
COMMITMENT
73
NOTA: Esta opção é ignorada para Client Server (geradores DB/2 e
Oracle).
Esses DBMs não permitem a desativação da integridade transacional.
KEY ASSIGNMENT
• Exit Key
Esta propriedade é usada para alterar a chave de função relacionada ao
Exit.
Valores: Qualquer número de chave de função válida.
O valor default é 3.
• Prompt Key
Esta propriedade é usada para alterar a chave de função relacionada ao
Prompt. Esta propriedade aplica-se somente ao objeto. Esta função pode
inclusive ser desabilitada assinalando-se à mesma o valor ‘0’. Se for
desabilitada, o programa não responde às prompts key e os programas de
prompt não serão gerados.
Valores: Qualquer número de chave de função válida.
O valor default é 4.
NOTA: Apesar de aceitar 1 como valor válido, o gerador ignora-o.
• Refresh Key
Esta propriedade é usada para alterar a chave de função relacionada ao
Refresh.
Valores: Qualquer número de chave de função válida.
O valor default é 5.
• Insert Mode
Esta propriedade é usada para alterar a chave de função relacionada ao
Insert Mode. Esta propriedade aplica-se somente ao objeto. Esta função pode
inclusive
caso, não ser
serádesabilitada assinalando-se
possível alterar para Modo àdemesma o valor
Inserção default ‘0’,
na transação. neste
O código
para inserção de registros é gerado.
74
Valores: Qualquer número de chave de função válida.
O valor default é 6.
• Previous Record
Esta propriedade é usada para alterar a chave de função relacionada ao
Previous Record. Esta propriedade aplica-se somente ao objeto. Esta função
pode inclusive ser desabilitada assinalando-se à mesma o valor default ‘0’,
neste caso, não será possível mover-se ao registro anterior e o código
correspondente não é gerado.
Valores: Qualquer número de chave de função válida.
O valor default é 7.
• Next Record
• Retrieve
Esta propriedade é usada para alterar a chave de função relacionada ao
Retrieve. Esta propriedade aplica-se somente ao objeto. Retrieve não pode ser
desabilitada porque aplica-se somente em Menus.
Valores: Qualquer número de chave de função válida.
O valor default é 9.
• Menu
Esta propriedade é usada para alterar a chave de função relacionada ao
acesso ao Menu Bar. Esta propriedade aplica-se somente ao objeto. Esta
função pode inclusive ser desabilitada assinalando-se à mesma o valor default
‘0’, neste caso, não será possível acessar o menu bar e o código correspondente
não é gerado.
Valores: Qualquer número de chave de função válida.
75
O valor default é 10.
• Update Mode
• Cancel
Esta propriedade é usada para alterar a chave de função relacionada ao
Cancel.
Valores: Qualquer número de chave de função válida.
O valor default é 12.
• Delete Mode
Esta propriedade é usada para alterar a chave de função relacionada ao
Modo Delete. Esta propriedade aplica-se somente ao objeto. Esta função pode
inclusive ser desabilitada assinalando-se à mesma o valor ‘0’, neste caso, não
será possível alterar o modo para Deleção na transação e o código de alteração
é gerado.
Valores: Qualquer número de chave de função válida.
O valor default é 13.
• Select
Esta propriedade é usada para alterar a chave de função relacionada ao
Select. Esta propriedade aplica-se somente ao objeto. Esta função pode
inclusive ser desabilitada assinalando-se à mesma o valor default ‘0’, neste
caso, o programa não responderá à chave de autoprompt e o código de
Autoprompt não é gerado.
Valores: Qualquer número de chave de função válida.
O valor default é 16.
76
• First Record
Esta propriedade é usada para alterar a chave de função relacionada ao
First Record. Esta propriedade aplica-se somente ao objeto. Esta função pode
inclusive ser desabilitada assinalando-se à mesma o valor default ‘0’, neste
caso, não será possível acessar o primeiro registro e o código correspondente
não é gerado.
Valores: Qualquer número de chave de função válida.
O valor default é 19.
• Display Mode
Esta propriedade é usada para alterar a chave de função relacionada ao
Modo de Display. Esta propriedade aplica-se somente ao objeto. Esta função
pode inclusive ser desabilitada assinalando-se à mesma o valor default ‘0’,
neste caso, não será possível alterar para modo de Display na transação e o
código correspondente é gerado.
Valores: Qualquer número de chave de função válida.
O valor default é 14.
• More Keys
Esta propriedade é usada para alterar a chave de função relacionada ao
More Keys.
Valores: Qualquer número de chave de função válida.
O valor default é 24.
77
11. Propriedades das Work Panels
11.1. LOADING
LOAD RECORDS
avança,Inicialmente, somente
então outras telasa primeira tela é carregada
são carregadas. Isto ée, feito
conforme
parao usuário
ganhar
performance. Mas em alguns casos, nós poderemos necessitar carregar o
subfile inteiro de uma vez. Para fazer isto, devemos setar a propriedade Load
Records como ‘Load All Records’. Esta propriedade indica que o subfile será
carregado por inteiro de uma única vez.
Valores:
- Load on request – carrega os registros na tela de subfile cada vez
que dados são requeridos.
- Load all records – carrega todos os registros no subfile no Evento
Load.
O valor default depende do gerador selecionado.
LOAD AT STARTUP
-Valores:
YES – o subfile é carregado imediatamente após a carga da tela.
- NO – o subfile é carregado após pedir a parte fixa da tela.
78
O valor default depende do gerador selecionado.
RESTRIÇÕES: Quando não há Tabela Base associada à Work Panel, essa
propriedade não tem efeito, e o subfile é carregado após pedir a parte fixa ser
pedida.
AUTOMATIC REFRESH
79
11.2. WINDOWS INTERFACE
MENUBAR
BORDER STYLE
MAXIMIZE BUTTON
80
MINIMIZE BUTTON
EspecificaVisual
para geradores: se o form
Basicdeve ter Foxpro.
e Visual um botão de minimização. Válido somente
Valores:
- YES: o form terá botão de minimização
- NO: o form não terá botão de minimização
O valor default é YES.
FORM ICON
Esta propriedade
form. Válido somente paraé geradores:
utilizada para especificar
Visual um nome
Basic e Visual para o ícone do
Foxpro.
Valores: Não possui nenhum valor pré-definido, você deve informar o
nome do ícone.
CONTROL BOX
MODAL DIALOG
81
Diálogo Não-Modal é sempre melhor que o diálogo modal, mas nem
sempre é possível utilizá-lo. Em particular, quando são passados parâmetros e o
objeto chamado retorna valores ao objeto chamador, então o diálogo Modal
deve ser usado. Os Prompts são um exemplo típico desse tipo de diálogo, onde
a transação espera valores retornados pelo prompt.
Valores:
- YES, if parameters specified: se o objeto tem parâmetros então o
diálogo Modal será usado, se não houver parâmetros então o diálogo
Não-Modal será usado.
- YES: Diálogo Modal é utilizado.
- NO: Diálogo Não-Modal é utilizado.
O valor default é: YES, if parameters specified.
Esta propriedade é usada para indicar que o form deve ser carregado
como uma janela de Popup (sobrepor a janela anterior ao invés de substituí-la).
Neste caso, parte das duas janelas podem ser vistas simultaneamente.
Valores:
- NO: a janela é mostrada totalmente como popup.
- YES, automatic border: o form será gerado como janela popup e a
- borda serádefined
YES, user desenhada de forma
border: automática.
o form será gerado como janela popup e a
borda pode ser desenhada pelo usuário no form. Este valor só é válido
para geradores de interface gráfica.
O valor default depende do gerador selecionado.
NOTA: Quando a tela é definida como popup, há algumas limitações de
linhas e colunas que devem ser respeitados. Se a tela desenhada ultrapassa
esses limites, uma mensagem é dada dentro do relatório de navegação na
especificação.
IMPORTANTE: Esta propriedade não é válida para geração em ambiente
windows.
82
AUTOMATIC BORDER
83
1 topo-esquerdo-canto
2 topo-borda
3 topo-direito-canto
4 esquerda-borda
5 direita-borda
6 Botão-esquerdo-canto
7 Botão-borda
8 Botão-direito-canto
Esses caracteres são enviados diretamente à palavra chave
WDWBORDER da DDS language para telas. Para obter informações adicionais
sobre esta palavra chave, procure no manual de referência da DDS.
Não há valor default para esta preferência. Isto é, se nenhum valor for
especificado na preferência, os atributos de tela dependerão dos valores
default do AS/400.
NOTA: Não use o caracter ‘ (apóstrofo) nesta propriedade.
11.4. AS/400 SPECIFIC – ESPECIFICAÇÕES AS/400
KEY ASSIGNMENT
• Exit Key
Esta propriedade é usada para alterar a chave de função relacionada ao
Exit.
Valores: Qualquer número de chave de função válida.
O valor default é 3.
• Refresh Key
Esta propriedade é usada para alterar a chave de função relacionada ao
Refresh.
Valores: Qualquer número de chave de função válida.
O valor default é 5.
84
• Cancel
Esta propriedade é usada para alterar a chave de função relacionada ao
Cancel.
Valores: Qualquer número de chave de função válida.
O valor default é 12.
• More keys
Esta propriedade é usada para alterar a chave de função relacionada à
opção More Keys.
Valores: Qualquer número de chave de função válida.
O valor default é 24.
85
12. Propriedades dos Relatórios
12.1. OPTIONS
REPORT OUTPUT
É usado para evitar a confirmação usual que ocorre após as funções ASK
(para pedir dados) de Report/Procedures.
Valores:
- YES – Ao usuário é pedido confirmação após entrada de dados.
- NO – Evita confirmação.
O valor default depende do gerador selecionado.
Indica se o programa pode ser cancelado pela tecla ESC. Num relatório
que imprime nota e é chamado de uma transação, é muito apropriado setar
esta propriedade como NO, para ter certeza que a nota será sempre impressa.
Valores:
- YES – é possível cancelar o programa.
- NO – não é possível cancelar o programa.
O valor default depende do gerador selecionado.
86
FOOTER ON LAST PAGE
Valores:
- YES – O rodapé será impresso em todas as páginas, inclusive na
última.
- NO – O rodapé não é impresso na última página.
O valor default depende do gerador selecionado.
KEY ASSIGNMENT
• Exit Key
Esta propriedade é usada para alterar a chave de função relacionada ao
Exit.
Valores: Qualquer número de chave de função válida.
O valor default é 3.
• Refresh Key
• Cancel
Esta propriedade é usada para alterar a chave de função relacionada ao
Cancel.
Valores: Qualquer número de chave de função válida.
O valor default é 12.
87
• More keys
Esta propriedade é usada para alterar a chave de função relacionada à
opção More Keys.
Valores: Qualquer número de chave de função válida.
O valor default é 24.
88
13. Propriedades dos Procedimentos
13.1. OPTIONS
REPORT OUTPUT
É usado para evitar a confirmação usual que ocorre após as funções ASK
(para pedir dados) de Report/Procedures.
Valores:
- YES – Ao usuário é pedido confirmação após entrada de dados.
- NO – Evita confirmação.
O valor default depende do gerador selecionado.
Indica se o programa pode ser cancelado pela tecla ESC. Num relatório que
imprime nota e é chamado de uma transação, é muito apropriado setar esta
propriedade como NO, para ter certeza que a nota será sempre impressa.
Valores:
- YES – é possível cancelar o programa.
- NO – não é possível cancelar o programa.
O valor default depende do gerador selecionado.
89
FOOTER ON LAST PAGE
Valores:
- YES – O rodapé será impresso em todas as páginas, inclusive na
última.
- NO – O rodapé não é impresso na última página.
O valor default depende do gerador selecionado.
COMMIT ON EXIT
90
duas transações funcionando em conjunto, nós colocamos no final da primeira
transação, um CALL para a segunda TRN.
91
13.3. AS/400 SPECIFIC – ESPECIFICAÇÕES AS/400
COMMITMENT
KEY ASSIGNMENT
• Exit Key
Esta propriedade é usada para alterar a chave de função relacionada ao
Exit.
Valores: Qualquer número de chave de função válida.
O valor default é 3.
• Refresh Key
Esta propriedade é usada para alterar a chave de função relacionada ao
Refresh.
Valores: Qualquer número de chave de função válida.
O valor default é 5.
• Cancel
Esta propriedade é usada para alterar a chave de função relacionada ao
Cancel.
Valores: Qualquer número de chave de função válida.
92
O valor default é 12.
• More keys
93
14. Propriedades das Web Panels
14.1. FOOTER
FOOTER IMAGE
94
15. Propriedades do Modelo – Visual Basic
15.1. GENERAL
Use esta opção para setar a versão do gerador Visual Basic que será
utilizado.
Valores:
- Visual Basic 4.0 (16 bits)
- Visual Basic 4.0 (32 bits)
- Visual Basic 5.0
-Valores:
Windows 95 – a interface do sistema destino será Windows95
95
- Windows 3.x – a interface do sistema destino será Windows3.1 ou
Windows3.11
O valor default é Windows95.
executando
Windows 3.11,abaixo do Windows
sete esta 95,“Windows
preferência e a interface do sistema
3.x”, e teste destino
a aplicação comoé
se estivesse no ambiente do cliente.
Caso 3: Se você está desenvolvendo uma aplicação numa máquina
executando abaixo do Windows 95, e a interface do sistema destino é
Windows 95, você não terá nenhum problema.
Caso 4: Se você está desenvolvendo uma aplicação numa máquina
executando abaixo do Windows 3.11, e a interface do sistema destino é
Windows 3.11, você não terá nenhum problema.
96
NOTA: Se o valor dessa preferência é setada como NO (SDI), e mais
tarde é modificada para YES (MDI) você deve forçar a geração de todos os
programas.
Com esta opção você pode permitir ao usuário mudar o tamanho das colunas do
subfile em tempo de execução.
Valores:
- YES – o usuário será capaz de modificar o tamanho das colunas do
subfile a qualquer momento.
- NO – o tamanho das colunas do subfile do programa gerado será
especificado no desenho do mesmo e o usuário não será capaz de
mudá-los em tempo de execução.
O valor default é YES.
CONFIRM
97
Inserção e Alteração ou selecionando o modo de deleção em algum
nível da transação.
- Do not confirm each action: o usuário NÃO será questionado
sobre confirmação após ter finalizado a entrada de dados nas
ações de Inserção e Alteração ou selecionando o modo de deleção
em algum nível da transação.
- Entrada de parâmetros em Reports e Procedures
- Confirm each action: após a entrada de parâmetros nas
Reports/Procedures, o usuário será questionado sobre a
confirmação dos mesmos.
- Do not confirm each action: após a entrada de parâmetros nas
Reports/Procedures, o usuário NÃO será questionado sobre a
confirmação dos mesmos.
O valor
NOTA; default
Você podeé Confirm each action.
sobrescrever esta propriedade num objeto em
particular alterando a propriedade Confirm para o objeto selecionado.
AUTOSKIP
LOCK TYPE
Esta preferência controla o tipo de ‘lock’ que será executado pelo Visual
Basic no Access.
-Valores:
Pessimistic: o lock é executado quando o registro é lido.
98
- Optimistic: o lock não é executado quando o registro é lido e sim
controla se ele foi modificado ou não por outro usuário na hora de
regravá-lo.
O valor default é Pessimistic.
NOTA: Você deve levar em consideração que o Access loca páginas e não
registros.
Com esta opção, você pode escolher se a aplicação gerada terá Diálogo
Conversacional ou Diálogo Pseudo Conversacional para implementar o controle
de concorrência.
Com o diálogo pseudo-conversacional nós tendemos a reduzir o tempo de
lock de registro ao mínimo, o que quer dizer que somente serão locados os
registros durante o process-time. Isto incrementa a concorrência na base de
dados.
O conceito básico é ler sem locar, permitindo ao usuário fazer
alterações e então, em tempo de processamento, verificar se nenhum outro
usuário já alterou o mesmo registro. Se isto ocorrer, uma mensagem de erro é
mostrada e o usuário de refazer a operação.
Valores:
- Use conversational dialog: implementa diálogo conversacional.
- Check updatedNeste
conversacional. tables
caso, o only:
controleimplementa
é executadodiálogo
a nível depseudo-
tabela.
Se a tabela é modificada dentro de um nível, todos os atributos
daquela tabela que estão envolvidos na transação são controlados. O
problema dessa implementação aparece quando há usuários que
baseiam suas decisões em tabelas não alteradas na transação.
- Check all acessed tables: implementa diálogo pseudo-conversacional.
Neste caso, o controle é executado sobre todas as tabelas dos
atributos envolvidos na transação. Este parece ser o nível de
controle mais indicado, pois situações incontroláveis não existirão.
O valor default é: Check updated tables only.
diálogoNOTA:
PseudoDependendo da linguagem
conversacional e plataforma
é implementado que todas
para você está
as gerando,
operaçõeso
99
executadas na Transação (Cobol e RPG para AS/400) ou somente no nível da
transação (nos casos dos Xbase ou Visual Basic).
MAIL FUNCTIONS
Você deve setar esta preferência para YES para ser capaz de usar as
mail functions.
Valores:
- YES: o desenvolvedor será capaz de executar GeneXus mail functions
- NO: o desenvolvedor NÃO será capaz de executar GeneXus mail
functions.
O valor default é NO.
NOTA: você necessitará ter corretamente instalado todos os
componentes para enviar mensagens via MAPI (Microsoft Messaging API) e
também ter instalado não somente o Mail (Microsoft Mail e/ou compatível) mas
também o arquivo VBX para utilizar a interface (MSMAPI.VBX).
GRAPHIC FUNCTIONS
100
O valor default é NO.
Você pode usar OLE para estabelecer a comunicação entre uma aplicação
gerada pelo GeneXus e Excel.
Para ser capaz de fazer isso, algumas funções standard devem ser
avaliadas. Você deve setar esta preferência para YES para ser capaz de usar
Excel do GeneXus para Visual Basic.
Valores:
- YES: o desenvolvedor será capaz de executar as funções Excel do
GeneXus.
- NO: o desenvolvedor NÃO será capaz de executar as funções Excel
do GeneXus.
O valor default é NO.
101
&defaultpath = Diretório default de entrada (String)
&caption = Edit Box Caption (String)
File Open Dialog
Call(“GxSelFile”,&selected,&initialpath,&extensions,&caption,&buttoncap
tion, &buttontype)
&selected = Nome do arquivo de saída selecionado (String)
&initialpath = Caminho default (String)
&extensions = default de extensão (String)
&caption = Título do Box (String)
&buttoncaption = Nome do botão de seleção (String)
&buttontype = Flag para habilitar o botão no Diálogo (inteiro)
Save as Dialog
Call(“GxNewFile”,&selected,&initialpath,&defaultname,&extensions,&cap
tion)
&selected = Nome do arquivo de saída selecionado (String)
&initialpath = Input Caminho default para procura (String)
&defaultname = Input Default nome de arquivo (String)
&extensions = default de extensão (String)
&caption = Título do Box (String)
Select Font Dialog
Call(“GxSelFont”,&SelectedFont,&SelectedSize,&SelectedStyle)
&SelectedFont = Nome da fonte de saída selecionado (String)
&SelectedSize = Tamanho da fonte selecionada (String)
102
Call(“GxXopyFile”,&Source,&Target)
&Source = Nome do arquivo de entrada (String)
&Target = Nome do arquivo de destino (String)
Calculator
Call(“GxCalculate”,&Result)
&Result = valor numérico de entrada/saída (Numérico)
Para será
calculadora os campos
chamadanuméricos
quando forqueclicado
não tem associado
o botão um mouse
direito do prompt, umao
sobre
mesmo.
Valores:
- YES: Você será capaz de chamar a calculadora clicando o botão
direito do mouse sobre o campo numérico.
- NO: Você NÃO terá a facilidade de chamar a calculadora clicando o
botão direito do mouse sobre o campo numérico.
O valor default é YES.
15.3. PRINTING
103
LAN PRINTER
tipo deDiferentes
rede: strings devem ser definidos dependendo da linguagem e do
Para FoxPro e DBASE os seguintes devem ser definidos:
Sintaxe para Microsoft Networks: \\<server>\<printer>
Onde <server> é o nome do servidor
<printer> é o nome da impressora
Exemplo: \\ARTECH\\PRXX
Sintaxe para Novell networks: \\<spooler>
Para maiores informações sobre o comando SET PRINTER TO, procure
nos manuais de referência do FoxPro ou DbaseIV.
Exemplo: \\SPOOLER \N \Q=WORD4039
Para Clipper:
Sintaxe para LAN Printer: <printer port>
Exemplo: LPT2.
- serem
NO – oenviados à impressora.
relatório será enviado diretamente à impressora. Nenhum
<diálogo de impressora> será mostrado.
104
O valor defualt é YES.
PRINT METHOD
Valores:
- VB Native Printing: relatórios são impressos usando Visual Basic
Native printing.
- Report Viewer: relatórios são impressos usando GeneXus Report
Viewer.
O valor default é: VB Native Printing.
NOTA: se você utilizar GeneXus Report Viewer você deve ter instalado
um driver de impressora na máquina onde o programa será executado, de outro
jeito Report Viewer não funcionará corretamente.
15.4. FORMAT
FIELD EXIT
105
próximo campo e a Seta para Cima e Shift-Tab serão interpretadas
como 'movimento' para o campo anterior.
O valor default é: Tab, Shift-Tab.
DECIMAL SEPARATOR
DATE FORMAT
106
Mm/dd/yy: mês/dia/ano
dd/mm/yy: dia/mês/ano
O valor default é: Language Dependent.
Mm/dd/yy: mês/dia/ano
dd/mm/yy: dia/mês/ano
O valor default é: Language Dependent.
TIME FORMAT
107
O valor default é: language Dependent.
NOTA: Se o uso do formato 12 horas é especificado ou inferido,
dependendo da linguagem selecionada, os campos terão 3 caracteres a mais
(tela ou impressora) correspondente às strings ‘AM’ ou ‘PM’.
Informe a partir de qual ano que deve ser considerado como século 20.
Todo ano (parte de um campo date) menor que o informado nesta preferência,
será considerado século 21 (2000...).
O valor default é: 40.
PROTOCOL SPECIFICATION
108
Entretanto, há alguns browsers (normalmente versões antigas) que não
suportam links sem protocolo especificado. Por esta razão, e se você deseja
suportar tantos browsers quanto possível, nós recomendamos não utilizar ´Do
not specify’ nesta preferência.
NOTA: se o protocolo HTTPS é usado, você deve ter Secure Web
Server.
- (PC),
NO: você deve selecionar YES
Se você NO,para esta de
o tipo propriedade.
controle para Xbase é
executado na especificação.
O valor default é: YES.
109
A expressão acima tem dois problemas:
A função month( ) requer um parâmetro tipo Date.
Uma expressão de igualdade obriga que ambos os lados da igualdade
sejam do mesmo tipo.
Assim o diagrama de navegação irá mostrar todos os Warnings (ou erros
dependendo da plataforma) indicando que a expressão não é correta:
- Type mismatch in expression <Invalid Expression> <at line X> (Tipos
não são compatíveis) onde <Invalid Expression> é parte da expressão
onde o erro foi detectado e <at line X> indica a linha da procedure ou
report onde o erro foi encontrado.
- Type mismatch in Assignment <Invalid Assignment> <at line X> (Tipos
não são compatíveis na igualdade) onde <Invalid Assignment> mostra
uma assinalação inválida.
Ex.: &no=&data + month(&char)
Do que
supor exemplo
o erroacima as mensagens
aconteceu mostradas
na linha 15 serão as seguintes: vamos
de um relatório:
- Type mismatch in expression month(&char) at line 15.
- Type mismatch in assignment &no=&data + month(&char) at line 15
110
- AGGREGATE-SELECT: Há seis tipos de fórmulas Aggregate-Select
(max, min, find, set, sum, count). Elas são compostas dos seguintes
parâmetros:
Fórmula = formula(Atributo,Condition,Default,Return)
O atributo “Return” é usado quando fórmulas MAX( ) e MIN( ) são
utilizadas.
Os seguintes casos são controlados:
- Fórmula e Atributo devem ser do mesmo tipo (Exceto para as
fórmulas MAX( ) e MIN( ));
- Fórmula e Default devem ser do mesmo tipo;
- Fórmula e Return devem ser do mesmo tipo;
- A validade da condição também é controlada.
No caso de haver parâmetros com erro é mostrado:
- Type mismatch in formula <Formula> in <TypeOfParameter>
parameter
indica onde <formula>
o parâmetro inválido.é o atributo formula e <TypeOfParameter>
Exemplo:
Formula = Numérico(10)
AttrNo = Numérico(10)
AttrData = Date 8
AttrFirst = Caracter(10)
AttrReturn = Date 8
A fórmula mostrada abaixo dará as seguintes mensagens:
Formula = max(AttrFirst,str(AttrNo,10)>CTOD(AttrData),’90’,
AttrReturn)
Type mismatch in
Type mismatch in formula
formula in
in default parameter
return parameter.
A mensagem correspondente à condição na fórmula é:
Type mismatch in condition str(AttrNo,10) <> CTOD(AttrData) in
fórmula Formula.
Tipos de controle nas Regras das Transações:
A maioria das regras das transações são transformadas em assinalações
e a consistência dos tipos de dados também deve ser controlado. As regras
Default, Equal, Add, Subtract, etc também são controladas.
As regras condicionais também tem sua consistência checada, ex.> Error,
Msg, etc.
111
Em ambos os casos as mensagens mostradas são as mesmas mostradas
acima.
FUNCTIONS
Permite o uso de funções específicas, que não são suportadas por todos
os geradores.
Se funções específicas não são explicitamente suportados pelo GeneXus
(ex.: TRIM, LEFT, etc, porque são válidos no AS/400) e elas são utilizadas, um
erro será mostrado.
Valores:
- Allows non-standard functions when specyfing: inibe o controle da
sintaxe mencionada acima na especificação.
- Error on non-standard functions when specyfing: o controle da
sintaxe mencionada acima é feita na especificação.
O valor default é: Error on non-standard functions when specyfing.
LAST RECORD
NEXT RECORD
PREVIOUS RECORD
REFRESH KEY
Permite você selecionar qual tecla será utilizada como tecla de Refresh.
O valor default é F5.
PROMPT KEY
Permite você selecionar qual tecla será utilizada como Prompt das
Transações.
112
O valor default é F4.
Você deve evitar assinalar a mesma tecla de função para duas ações
diferentes porque isso não é controlado pelo gerador.
15.8.
15.9. OTHER
113