|
From: lscheidegger - x. <lsc...@xd...> - 2003-08-19 13:31:43
|
>Desvantagens:
>- Tem alguma? Me avisem. ;)
S=F3 uma, vc escreve pra diabo.
Ao mapear as interfaces e opera=E7=F5es, n=F3s temos que ter em conta =
que
teremos uma situa=E7=E3o padr=E3o definida para cada uma delas.
O que fazemos normalmente =E9 criar uma defini=E7=E3o padr=E3o para cada
interface, opera=E7=E3o e propriedade, e mesclamos apenas as =
diferen=E7as que
a entidade/classe que est=E1 sendo processada tem.
Supondo que a defini=E7=E3o padr=E3o da opera=E7=E3o add seja (seguindo =
seu
padr=E3o):
//LINK
//define a imagem que aparecer=E1 no bot=E3o
add.setImage("bt_inclusao.gif");
//LINK + DISPLAY
//Define o caption do link, bem como o t=EDtulo da p=E1gina
add.setTitle("Inclus=E3o");
//DISPLAY
//define que por default ser=E3o mostrados todas as propriedades no
formul=E1rio
add.getAllProperties(true);
//indica que a primary key =E9 gerada automaticamente e n=E3o pode ser
alterada
add.hiddenIdentifier(true);
//defini=E7=E3o de subt=EDtulo
add.setSubtitle("");
//PROCESS
//define qual =E9 a opera=E7=E3o que ser=E1 chamada ap=F3s o =
processamento do
formul=E1rio
add.setRedirectOperation("report");
//define a query de processamento
add.setQuery("add");
//define se h=E1 algum m=E9todo de valida=E7=E3o que deva ser chamado =
antes da
inclus=E3o
add.setValidationMethod("validate");
Supondo que essa seja a defini=E7=E3o padr=E3o de uma propriedade =
string:
string.setLenght(100)
string.isMandatory(false)
string.isVisible(true)
string.setCaption("")
string.isIdentifier(false)
Essa =E9 a defini=E7=E3o padr=E3o de um campo num=E9rico
number.setType(integer)
number.setCaption("")
number.minValue(null)
number.maxValue(null)
number.isIdentifier(false)
number.isMandatory(false)
number.isVisible(true)
Vamos criar uma entidade Usu=E1rio, vou exemplificar apenas a =
inclus=E3o.
// Cria a definicao da classe
usuario =3D new ClassDefinition("Usuario");
// Cria as propriedades que a classe vai ter
usuario.addProperty("id", Number.class);
usuario.addProperty("nome", String.class);
//define que o campo id =E9 chave prim=E1rio, e que seu valor vem de uma
seguence ou campo auto_increment
usuario.properties.get("id").isIdentifier(true);
usuario.properties.get("id").setType("sequencer");
//define a legenda da propriedade nome
usuario.properties.get("nome").setCaption("Nome do Usu=E1rio");
//addAction (String type,boolean automatic=3Dtrue)
usuario.addAction("add");
[]'s
Luiz
|