DDT - Ordem de criação das VIEWS e UDFs


Author
Message
Rogerio Mauri
Rogerio Mauri
StrataFrame User (309 reputation)StrataFrame User (309 reputation)StrataFrame User (309 reputation)StrataFrame User (309 reputation)StrataFrame User (309 reputation)StrataFrame User (309 reputation)StrataFrame User (309 reputation)StrataFrame User (309 reputation)StrataFrame User (309 reputation)
Group: StrataFrame Users
Posts: 205, Visits: 629
IVAN... Por gentileza, peço que faça a tradução deste tópico. Desde já, obrigado.

No DDT a ordem de publicação de VIEWS e UDFs funciona assim:

1o.) São criadas as VIEWS, ordenadas pelo campo [Priority].

2o.) São criadas as UDFs, ordenadas também pelo campo [Priority].

Ocorre, no entanto, que às vezes necessitamos referenciar uma UDF 'Scalar-valued' dentro de uma VIEW e como as VIEWs são construídas primeiro o 'update' do banco de dados retorna erro, pois a referenciada UDF ainda não existe. Resultado: ERRO e a VIEW também não é criada.

Para contornar essa situação, a ordem de criação (campo priority) precisa ser compartilhada entre VIEWS e UDFs. Por exemplo:

Priority 01 - cria a VIEW:  vw_TbDivida
Priority 02 - cria a UDF:    uf_ReferenciaDivida (que utiliza a view 'vw_TbDivida' para retornar uma informação qualquer - view do tipo scalar).
Priority 03 - cria a VIEW:  vw_TbDividaReferenciada (essa view faz uma chamada à UDF uf_ReferenciaDivida para retornar um campo customizado, segundo um parâmetro passado).

Isso exigirá uma mudança na maneira como o Strataframe DDT faz a publicação de 'views' e 'UDFs'. No entanto, a sequência correta na criação desses dois objetos dependentes garantirá pleno uso da potencialidade de recursos do SQL Server.

Aguardo seu retorno...

Rogério Mauri
Licitec Software
http://blog.licitec.com.br

Rogério Mauri Smile



Ivan George Borges
Ivan George Borges
Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)
Group: StrataFrame MVPs
Posts: 1.9K, Visits: 21K
Olá Rogério.

Você já baixou e instalou o último beta do SF 1.6.6 ?

Se não, aqui está o link:

http://forum.strataframe.net/FindPost18263.aspx

Nesta última versão, o DDT possibilita configurar prioridades. Então, se você setar prioridade 2, ela será instalada antes de algo de prioridade 3, e assim por diante.

Me diga depois se isto resolve seu caso.

Abraços.

Rogerio Mauri
Rogerio Mauri
StrataFrame User (309 reputation)StrataFrame User (309 reputation)StrataFrame User (309 reputation)StrataFrame User (309 reputation)StrataFrame User (309 reputation)StrataFrame User (309 reputation)StrataFrame User (309 reputation)StrataFrame User (309 reputation)StrataFrame User (309 reputation)
Group: StrataFrame Users
Posts: 205, Visits: 629
Ivan... Boa Tarde e grato pelo seu retorno.

De fato não atualizei para a versão 1.6.6 (beta). Estou aguardando a publicação final.

Quanto à prioridade de criação, a versão 1.6.5 já faz isso, mas dentro da própria categoria do objeto. Refiro-me, no entanto, a uma ordenação compartilhada entre os objetos SP, Views e UDFs.

Por exemplo:

- Prioridade 10 - Cria primeiro a VIEW "view_TbDivida"
- Prioridade 20 - Na sequência, cria uma UDF "uf_Teste"
- Prioridade 30 - Volta para as view e cria a VIEW "view_TbDivida2"
- Prioridade 40 - Cria uma SP "sp_Customizada"
- Prioridade 50 - Cria outra SP "sp_Customizada2"
- Prioridade 60 - Cria agora outra UDF "uf_Teste2"

E assim sucessivamente. Isso já está presente na versão 1.6.6?

Caso não esteja, recomendo essa importante mudança, pois sem essa condição não é possível customizar SPs, views e UDFs que fazem referência entre si.

Abraços.

Rogério Mauri Smile



Ivan George Borges
Ivan George Borges
Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)
Group: StrataFrame MVPs
Posts: 1.9K, Visits: 21K
De fato não atualizei para a versão 1.6.6 (beta). Estou aguardando a publicação final.

Só para te dar um toque, eu não esperaria por isto, pois esta versão beta já está bem testada, inclusive dentro das aplicações da MicroFour. Parece bastante seguro utilizar a versão 1.6.6 já neste momento.

E assim sucessivamente. Isso já está presente na versão 1.6.6?

Sim.

Abraços. Wink

Rogerio Mauri
Rogerio Mauri
StrataFrame User (309 reputation)StrataFrame User (309 reputation)StrataFrame User (309 reputation)StrataFrame User (309 reputation)StrataFrame User (309 reputation)StrataFrame User (309 reputation)StrataFrame User (309 reputation)StrataFrame User (309 reputation)StrataFrame User (309 reputation)
Group: StrataFrame Users
Posts: 205, Visits: 629
Ok Mestre...

Obrigado pelo suporte.

BigGrin

Rogério Mauri Smile



Ivan George Borges
Ivan George Borges
Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)Strategic Support Team Member (3.6K reputation)
Group: StrataFrame MVPs
Posts: 1.9K, Visits: 21K
Legal.

Qualquer coisa, dá um toque.

Cool

GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Similar Topics

Reading This Topic

Login

Explore
Messages
Mentions
Search