Autor Tópico: Criação de um Formulário com Tabelas 1 para 1 (***RESOLVIDO***)  (Lida 1657 vezes)

Adesoft

  • Avançado
  • ****
  • Mensagens: 355
    • Email
Criação de um Formulário com Tabelas 1 para 1 (***RESOLVIDO***)
« Online: Abril 25, 2012, 01:05:24 pm »
Caros amigos,

Estamos migrando parte de um sistema para o SC, porém temos uma tabela com 150 campos, ela realmente é grande, e desejamos dividir ela, pois até o SC para abrir e processar fica lento quando vamos alterar alguma coisa neste formulário. Na analise percebemos que poderemos dividir ela em 5 tabelas, porém os relacionamento deverá ser 1 para 1 e não 1 para N.

Objetivo:
Na tabela principal, terá um campo para identificar a situação onde será chamado a tabela 2;3;4 ou 5. Para complementar as informações contidas.

Porém ao montar o formulário principal estamos com dificuldade de como apresentar no formulário através da escolha deste campo a visualização dos campos da tabela ligada por relacionamento 1:1.

Alguém já passou por isto? Conseguiu fazer um formulário composto de campos mais de uma tabela com relacionamento 1:1.

Adeilson de Oliveira
« Última modificação: Maio 03, 2012, 02:00:30 pm por Adesoft »
Adeilson de Oliveira
THS do Brasil

Kleyber

  • Expert
  • *****
  • Mensagens: 2237
    • Email
Re:Criação de um Formulário com Tabelas 1 para 1
« Responder #1 Online: Abril 25, 2012, 01:52:33 pm »
Adeilson,

Uma pergunta: você vai mostrar as tabelas 2,3,4 ou 5 simultaneamente ou vai mostrar uma por uma dependendo de uma condição?
Kleyber Derick

ITIL® V3 Foundation Certified
Analista de Sistemas
São Luís - Maranhão
www.tkinformidia.net

Haroldo

  • Expert
  • *****
  • Mensagens: 6277
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:Criação de um Formulário com Tabelas 1 para 1
« Responder #2 Online: Abril 25, 2012, 02:47:46 pm »
Quebrar a tabela em 5, e usar um único formulário com os 150 campos vai continuar lento da mesma forma.

Adesoft

  • Avançado
  • ****
  • Mensagens: 355
    • Email
Re:Criação de um Formulário com Tabelas 1 para 1
« Responder #3 Online: Abril 25, 2012, 04:02:09 pm »
Kleyber,

De acordo com a condição será exibido a tabela complementar exemplo:

tabela principal (1)
Caso a condição dentro do formulário principal for nro. 02, ele visualizará um bloco da tabela nro.02 para complementar os dados (1:1)

tabela principal (1)
Caso a condição dentro do formulário principal for nro. 03, ele visualizará um bloco da tabela nro.03 para complementar os dados (1:1)

tabela principal (1)
Caso a condição dentro do formulário principal for nro 04, ele visualizará um bloco da tabela nro.04 para complementar os dados (1:1)

tabela principal (1)
Caso a condição dentro do formulário principal for nro 05, ele visualizará um bloco da tabela nro.05 para complementar os dados (1:1)

Haroldo com a quebra de campos, creio que o formulário para edição no SC ficará mais rápido, por isto foi a ideia de quebrar esta tabela principal ligada com 5 tabelas menores (Relacionamento 1:1) para cada tabela.
Porém no SC, não estou conseguindo conciliar esta necessidade.

Adeilson de Oliveira


Adeilson de Oliveira
THS do Brasil

Haroldo

  • Expert
  • *****
  • Mensagens: 6277
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:Criação de um Formulário com Tabelas 1 para 1
« Responder #4 Online: Abril 25, 2012, 04:30:43 pm »
o problema que vejo ainda, é que o formulário terá 150 campos, e para o SC administrar isso vai ser lento  de qualquer forma, cada campo no formulário é um registro enorme nas tabelas do sc.

Para fazer funcionar como deseja:
Criar o formulário para a tabela principal.
Criar os demais campos das demais tabelas manualmente.
No evento onload, fazer select das tabelas adicionais e alimentar os campo manualmente.
No evento onAfterInssert e onAfterUpdate, fazer o insert/update nas tabelas adicionas capturando o valor dos respectivos campos
No evento onAfterDelete, excluir os registros relacionados das tabelas adicionais.

Isso se for num único formulário.