Ir para conteúdo
Fórum Script Brasil

Paulo Jardim

Membros
  • Total de itens

    77
  • Registro em

  • Última visita

Posts postados por Paulo Jardim

  1. Nossa

    Perfeito.

    MUito obrigado mesmo Mais uma vez Xistyle

    segue aqui o resultado da consulta

    Agora só tenho uma dúvida

    No caso o total ta por dia, tem como eu colocar esse total no total da coluna? ou eu tenho de fazer isso na aplicação?

    Outra dúvida, como faço pra que aparecam as datas que fazem parte do intervalo de data mesmo que não tenham valores associados

    EX:

    entre 10 e 15 de outubro.

    mais digamos que dia 13 não teve declaração,

    Tenho como representar esta data vazia no grid?

  2. Prezados,

    Desde já agredoço ao Xistyle pela força que tem me dado...Quase terminado meu software

    Agora preciso apenas de um relatório..

    Esse relatório deve ter o seguinte formato no gridview

    Data da declaração               valorTotalDeclaracao01              valorTotalDeclaracao02                 valorTotalDeclaracao03           Maior Valor Por linha
    
    01-01-2011                                  2000                                        5000                                                3000                                 5000
    02-01-2011                                 5000                                         4000                                                4000                                 5000
    03-01-2011                                   0                                               0                                                      0                                   0
    TOTAL 7000 9000 7000 Como podem ver devo retornar a data e o valor de cada tipo de declaração além do maior valor por linha e o total por coluna. Além disso outra coisa importante é que preciso, mesmo que não tenha declaração com alguma dtaa do intervalo ela apareça no relatório segue o link para a estrutura do banco de dados Modelagem Banco Para preencher vou utilizar a seguinte stored procedure:
    USE [AUDITORIA]
    GO
    /****** Object:  StoredProcedure [dbo].[Proc_Itens_Declaracao_RelatorioDeclaracao]    Script Date: 11/01/2011 11:43:43 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    ALTER Proc [dbo].[Proc_Itens_Declaracao_RelatorioDeclaracao] (
       @Param_data_inicial Date,
       @Param_data_final Date,
       @Param_cod_loja Int,
       @Param_cod_tipo_declaracao01 Int ,
       @Param_cod_tipo_declaracao02 Int,
       @Param_cod_tipo_declaracao03 Int) 
    AS
    
    SELECT Loja.cod_loja, Declaracao.data_declaracao,
    SUM( (case when Declaracao.cod_tipo_declaracao in (@Param_cod_tipo_declaracao01) then Itens_Declaracao.valor else 0 end)) valor1, 
    SUM( (case when Declaracao.cod_tipo_declaracao in (@Param_cod_tipo_declaracao02) then Itens_Declaracao.valor else 0 end)) valor2,
    SUM( (case when Declaracao.cod_tipo_declaracao in (@Param_cod_tipo_declaracao03) then Itens_Declaracao.valor else 0 end)) valor3 
    
    
    
    FROM Itens_Declaracao 
    INNER JOIN Declaracao ON Declaracao.cod_declaracao = Itens_Declaracao.cod_declaracao 
    INNER JOIN Loja ON Loja.cod_loja = Declaracao.cod_loja 
    WHERE Declaracao.data_declaracao  BETWEEN ('@Param_data_inicial') AND ('@Param_data_final') 
    AND Declaracao.cod_loja = @Param_cod_loja 
    AND Declaracao.cod_tipo_declaracao in (@Param_cod_tipo_declaracao01,@Param_cod_tipo_declaracao02,
    @Param_cod_tipo_declaracao03) 
    GROUP BY Declaracao.data_declaracao, Loja.cod_loja
    
    
    
    
    RETURN

    OBS: dentro desse estored procedure ainda não implemente o total por coluna nem o maior valor por linha

  3. Brigado pela dica

    Xistyle

    O Seu select realmente esta bem mais mais alinhado.

    Agora confundiu um pouco. Você tem uma página que o usuário digita os dados de loja, tipo e data. Se existir esses dados, aparece numa grid. Se não, permite o usuário cadastrá-los ou mostra a relação de dados já existentes?

    São 3 tabelas diretamente envolvidas

    Primeiro A declaração que irá armazena a data da declaração, essa data não é a data atual, mas sim a data dos quais os dados inseridos no banco irão atualizar.

    Por exemplo um usuário quer fazer a declaração de vendas de uma loja do dia 01-01-2012

    ela seleciona a loja, seleciona qual tipo de declaração, cada tipo declaração tem seus proprior valores, por exemplo.

    Existem a declração feita pelo auditor (tipo = auditor) e tem a declração feita pela loja (tipo = loja) os dados estão na mesma data porém tem atributos diferentes.

    Após selecionar esses dados aparecerá um grid e conforme imagem abaixo:

    Link

    Essa imagem é após clicar em editar ai o grid fica editavel.

    A questão é que com certeza a loja 1 por exemplo irá ter 5, por exemplo documentos do tipo RDZ e 2 por exemplo do garantia.

    Meu select tem de retornar exatamente a descrição seguido da identificação do tipo de documento.

    Entretanto se eu der um inner join na tabela itens declração, como eu ainda não tenho nada cadastrado para esses itens. A consulta me retorna Vazia.

  4. E na hora de consultar,

    Quero que atravéz do filtros me retorne se já dados informados para aquela data daquela loja e daquele tipo de declaração.

    MASSSSS independente de haver dados ou não, quero que ele me retorne a consulta da tabela DCOUMENTO ( que vai estar preenchida ) e do lado a tabela itens_declaração

    que pode estar vazia ou parcialmente preenchida.

  5. Xistyle,

    Mais uma vez grato pelo apoio.

    Mas se for este o caso, se eu tiver que criar a declaração depois os itens dela.

    Como faça isso?

    Minha dúvida é a seguinte.

    O usuário informa a loja, tipo e data.

    1- caso:

    1.1- não existem dados cadastrados com esse filtro.

    1.1.1 - Preenche o grid com com as seguintes informações

    select Tipo_Documento.desc_documento, Documento.ident_doc , Itens_Declaracao.obs_declaracao, Itens_Declaracao.valor,
            Declaracao.data_declaracao,  tipo_declaracao.tipo_declaracao 
            from Tipo_Documento
            LEFT JOIN Documento on Documento.cod_tipo_documento = Tipo_Documento.cod_tipo_documento
            LEFT JOIN Itens_Declaracao on Itens_Declaracao.Documento_cod_documento = Documento.cod_documento
            LEFT JOIN Loja on Loja.cod_loja = Documento.cod_loja
            LEFT JOIN Declaracao on Declaracao.cod_declaracao = Itens_Declaracao.cod_declaracao
            LEFT JOIN Tipo_Declaracao on tipo_declaracao.cod_tipo_declaracao = Declaracao.cod_tipo_declaracao

    Minha dúvida já começa por ai.

    O retorno disso é o que preciso. só que essa consulta precisa estar sendo filtrado pela loja pelo tipo de declaração e pela data.

    Só que se eu botar where ai ele não retorna nada.

    eu quero botar para filtrar por tudo isso e ainda obter os campos, mesmo que NULL

  6. Prezados,

    Segue a modelagem do banco em anexo.

    Link

    Como pode ver a 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

    Link Para tela de declaracao

    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?

  7. Prezados,

    Pois bem, refiz o banco.

    Segue 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?

  8. 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.

  9. Galera, veja se pra pra entender:

    Existe um cruzamento e 2 semaforos controlando.

    existe um sensor que fará a leitura dos carros que passarem.

    tempo de cilco é de 120 segundos. ou seja, entretanto nenhum sinal pode ficar aberto mais que 100 segundos.

    ou seja. mesmo que passem 100 carros na vertical e 0 na horizontal o tempo de abertura da vertical ficará 97 verde e 3 segundos amarelo. já o da horizontal ficará 17 segundos verde e 3 amarelo completando o clico de 120 segundos.

    e para complicar ainda mais, o fluxo de carros é proporcional ao tempo também, ou seja se o tempo que ficou aberto na horizontal foi de 17 segundos mais passaram 30 carros

    e na vertical ficou aberto 97 sedundos e passaram 50 carros. o tempo aberto na horizontal será maior que na vertical, já que a pproporção de 30 carros para 17 segundos é maior que 50 carros para 97 segundos.

  10. Xistyle,

    Entendi...

    Eu tb vejo isso, infelizmente eu tinha uma outra estrutura, mas meu professor sugeriu dessa forma, eu realmene não concordo que seja a melhor.

    Mas independente disso acho que da para implementar.

    bom, a regra de negocio é a seguinte.

    A loja tem documentos vários tipos de documentos com quantidades diferentes ex:

    loja 1 tem o tipo de documento RDZ e sua quantidade é 5

    loja 1 tem o tipo de documento XXX e sua quantidade é 1

    assim por diante.

    Bom, a loja faz declaração. pela razão a loja deveria ficar ligada a essa tabela, mas meu professor me disse que não era ideal. Sendo assim ele sugeriu esse formado.

    Mas continuando. Existe uma página onde será feita a declaração..

    nessa página tera um grid esse grid será preenchido pela loja itens de declaração e itens de documento.

    porém minha dúvida é como fazer para que nesse grid apareca 5 vezes a rdz quando eu selecionar o filtro de loja 1, já que a loja 1 tem 5 quantidade do tipo de documento rdz;

    Segue abaixo scrip do banco.

    Script do banco

  11. entendo Xistyle...

    Eu realmenter não sei o que fazer agora.

    Pois se peço para vizualizar Itens da declaração ele não me retorna a quantidade de documentos de cada loja.

    eu andei pensando em no lugar de um select geral fazer ele por partes. exemplo

    dar um select em itens_doc e armazenar a quantidade em uma variavel qtd_itens_doc e a descrição do tipo em desc_tipo;

    depois preencher uma tabela ou um grid onde a primeira coluna seja a desc_tipo e o resto das colunas sejam ou outros dados que quero armazenar.

    ai na hora de dar um insert jogo no tabela itens declaração os itens declarados.

    Não sei se essa é a melhor forma...mais não vejo outra.

    por que eu quero que os dados aparecam igual a uma planilha de excel

    ex:

    LOJA            Tipo Documento          VALOR           ETC
    
    loja 1           rdz1                              11111
    loja 1           rdz2                               1111
    loja 1           rdz3                               11111
    loja 1           rdz4                               1111

    e assim até acabar a quantidade desse tipo de documento que esta definida na tabela desc_doc.

    ta dando pra entender?

  12. Mas o problema ta ae nesses filtros...

    Problema co mConsulta ao banco

    Nessa imagem mostra o problema:

    o seguinte, já que a loja x tem y quantidades do documento z

    eu gostaria que aparecesse a loja y quantidades do documento z

    assim:

    loja 1 RDZ

    loja 1 RDZ

    loja 1 RDZ

    loja 1 RDZ

    depois quando acabasse as rdz

    loja 2 xxx

    loja 2 xxx

    e assim por diante...

    mais com o outer join não consegui.

  13. Galera,

    preciso de um help

    no lin abaixo segue a modlagem do meu banco.

    Modelagem do banco

    Meu problema é o seguinte,

    Na tabela itens de documento eu armazeno a quantidade do tipo de documento de cada loja.

    Por exemplo.

    Loja 1 tem 10 documentos do tipo DEVOLUÇÂO

    Loja 1 tem 1 documento do tipo Transporte

    Loja 1 tem 40 documentos do tipo RDZ

    loja 2 tem 2 documentos do tipo DEVOLUÇÂo

    ETC.

    mas quando vou fazer a declaração preciso fazer uma consulta e preencher um grid da seguinte forma.

    Usuário informa o Cliente, data e tipo de declaração,

    ai abaixo é um filtro dos dados informados com as seguintes informações:

    DATA DOCUMENTO VALOR ETC

    Data que valor foi inserido DEVOLUCAO * O usuario informará caso não exista se será inserido ao final com um evento enviar.

    xxxx/xx/xx DEVOLUCAO * ""

    xxxx/xx/xx DEVOLUÇÂO * ""

    xxxx/xx/xx RDZ * ""

    Lembrando que a quantidade de devolução que aparecerá será igual a cadastrada, ou seja, se a loja tem 50 tipos de documentos devolução irá aparecer 50 linhas com os campos devolção ...

  14. Galera,

    preciso de um help

    no lin abaixo segue a modlagem do meu banco.

    Modelagem do banco

    Meu problema é o seguinte,

    Na tabela itens de documento eu armazeno a quantidade do tipo de documento de cada loja.

    Por exemplo.

    Loja 1 tem 10 documentos do tipo DEVOLUÇÂO

    Loja 1 tem 1 documento do tipo Transporte

    Loja 1 tem 40 documentos do tipo RDZ

    loja 2 tem 2 documentos do tipo DEVOLUÇÂo

    ETC.

    mas quando vou fazer a declaração preciso fazer uma onsulta e preencher um grid da seguinte forma.

    Usuário informa o Cliente, data e tipo de declaração

    DATA DOCUMENTO VALOR ETC

    Data que valor foi inserido DEVOLUCAO * O usuario informará caso não exista se será inserido ao final com um evento enviar.

    xxxx/xx/xx DEVOLUCAO * ""

    xxxx/xx/xx DEVOLUÇÂO * ""

    xxxx/xx/xx RDZ * ""

    Lembrando que são a quantidade de devolução que aparecerá será igual a cadastrada, ou seja, se a loja tem 50 tipos de documentos devolução irá aparecer 50 linhas com os campos devolção ...

  15. Galera,

    estou recebendo um array list preenchido e tou querendo fazer ele preencher um Drop down list

    Porém a informação bruta que ele retorna não é a que preciso, mais inspecionando o objeto vejo que ta lá dentro dele o ID e a descrição.

    Tem como eu pega esses valores?

    public void preencheDDL()
            {
                Tipo_documentoControl tipo = new Tipo_documentoControl();
                Tipo_documentoFields campos = new Tipo_documentoFields();
    
                ArrayList vetorCampos = new ArrayList();
                
    
                vetorCampos = tipo.GetAll();
                
    
                ddlTipo_Documento.DataSource = vetorCampos;
                ddlTipo_Documento.DataBind();
            }

    Nessa imagem explica o que quero dizer.

    www.epicti.com.br/download/ddl.png

    Eu preciso desse campo onde tem "RDZ"

×
×
  • Criar Novo...