Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Paulo Jardim

Consulta Complexa ao banco

Recommended Posts

Prezados,

 

Já algum tempo estou com muita dificuldade em resolver uma questão inerente ao meu banco de dados.

 

Link Da Modelagem do banco

 

Com base nessa modelagem o que eu tenho.

 

Itens_doc me armazena a quantidade de tipos de documentos que cada loja tem:

 

EX: loja 1 tem 20 documentos do tipo Garantia.

 

O problema esta na hora que vou fazer a declaração pois preciso inserir e consultar os dados da sequinte forma.

 

Existe um gridview que mostrará os dados da seguinte forma baseado nos filtros que são: cod_loja, cod_tipo_declaracao, data_declaração.

 

Entretanto esse gridview será editavel. ou seja, caso tenha alguma iformação ele ira aparecer e ao clicar em editar todos os campos entrarão em modo de ediçaão

 

Segundo a imagem abaixo:

 

 

Link Para tela de declaracao

 

 

A consulta que fiz para preencher o gridview foi:

 

 

 

SELECT Desc_Doc.desc_doc, t.identificacao_doc, T.valor, T.obs_declaracao from Desc_Doc
LEFT JOIN Itens_Doc as I
ON i.cod_desc_doc = desc_doc.cod_desc_doc
LEFT JOIN Loja as L
ON l.cod_loja = i.Cod_Loja
LEFT JOIN Itens_Declaracao as T
ON T.cod_itens_doc = i.cod_itens_doc
LEFT JOIN Declaracao as D
ON d.cod_declaracao = t.cod_declaracao


WHERE L.cod_loja = @Param_cod_loja

 

Entretanto como podem ver não filtrei por data nem por tipo_declaracao.

 

Baseado nisso preciso com que meu select funcione baseado nesses filtros e tb preciso que ao inserir direto do grid siga os seguintes passos:

 

1 - inserir em declaracao data, tipo_declaração e cod_loja

 

2 - inserir em Itens de declaração valor, descrição documento etc.

 

 

Realmente não sei como fazer isso. preciso de uma LUZ.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Problemas como isto ficam melhor, na minha opinião, com grids hierarquicos.

 

Cada SQL fica vinculado à uma tabela e os parametros da camada de aplicação se encarregam de navegação, ao navegar nas linhas do grid principal as linhas vinculadas a ela mudam nos dependentes.

 

Não informou qual seria o Front End mas a maioria das linguagens tem objetos prontos para isto.

 

Segue abaixo uma imagem que dá ideia do que eu digo.

 

cc164077.fig01(en-us).gif

 

Fonte

Compartilhar este post


Link para o post
Compartilhar em outros sites

Motta,

 

Obrigado

 

Acabei foi remodulando algumas coisas no banco.

 

VOu modificar aqui e depois comento.

 

Mias desde já grato pelo apoio acho a idéia muito boa vou ver se consigo implantar

Compartilhar este post


Link para o post
Compartilhar em outros sites

Prezados,

 

 

 

 

Pois bem, refiz o banco.

 

 

Link

 

Como pode ver agora declaração esta ligado a loja, além disso tb coloquei a identificação do documento no documento, assim na hora de cadastrar o documento ele informa a loja o tipo e o numero do documento.

 

minha dúvida esta na forma com que vou dar select e update ou insert no banco desses dados. EX:

 

tenho um grid view lista os seguintes campos:

 

 

TIPO DOCUMENTO    |  Identifcação do documento |   Obs_Declaração | Valor Declaração

RDZ                         |                 1234                 |       xxx                |        1.250

RDZ                         |                 12345                |       xxx                |        2500

RDZ                         |                 123456               |       131233        |         2.250

Garantia                  |                    12                   |       xxx                |        1.587

 

 

 

E assim por diante , e ao clicar em editar tenho um procedimento que transforma os labels em text box conforme códido abaixo*

 

<asp:Label ID="lbObs_declaracao" Visible='<%# !(bool) IsInEditMode %>' runat="server" Text='<%# Eval("obs_declaracao") %>' />

<asp:TextBox ID="txtObs_declaracao" Visible='<%# IsInEditMode %>' runat="server" Text='<%# Eval("obs_declaracao") %>' />

 

*caso tenha forma melhor de editar todos os dados do gridview ao mesmo tempo estou ouvindo.

 

 

Como pode ver, tenho 2 tabelas nesse gridiew a tabela Documento e a tabela itens de declaração entretanto quando eu for armazenar eu preciso armazenar primeiro em DECLARAÇÂO

pois tenho de armazenar quem esta fazendo, qual tipo de declaração e qual data, qual loja. Após isso tenho de pegar esse ID que foi gerada e criar na tabela itens_declaração

os dados do grid acima.

 

 

Minha linha de raciocínio esta plausível?

 

como devo proceder, poderia me ajudar com isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esta questão está mais em aplicação que em BD, creio.

Quer que mova este tópico para algum de linguagem ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esta questão está mais em aplicação que em BD, creio.

Quer que mova este tópico para algum de linguagem ?

 

 

Bom, Na verdade estou trabalhando com stored procedures.

 

Na minha aplicação WEB C# .net o gri já esta pronto só preciso preencher com o retorno dos dados do banco.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.