fabio_consultor Postado 9 de Setembro de 2008 Tópicos Que Criei: 83 Tópicos/Dia: 0.01 Meu Conteúdo: 433 Conteúdo/Dia: 0.07 Reputação: 0 Pontos/Conquistas: 2.980 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Idade: 53 Denunciar Compartilhar Postado 9 de Setembro de 2008 Pessoal, alguem teria um cubo ou ate mesmo planilha ou relatorio do gerador que me traga o relaizado e o orcado no Saldus. (Porem deve ser o orcado e nao lancado apenas da tabela CORCAMENTO) Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
fabio_consultor Postado 9 de Setembro de 2008 Tópicos Que Criei: 83 Tópicos/Dia: 0.01 Meu Conteúdo: 433 Conteúdo/Dia: 0.07 Reputação: 0 Pontos/Conquistas: 2.980 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Idade: 53 Autor Denunciar Compartilhar Postado 9 de Setembro de 2008 Na verdade consegui chegar até aqui, porem quando repito a sql trocando o CORCAMENTO.VRMES2 PARA VRMES3 ELE DA ERRO : /* REALIZADO X ORCADO */ SELECT CCONTA.CODCONTA AS CONTACONTABIL, CCONTA.DESCRICAO AS DESCRICAO, X.VALORES, '*02' AS MES, X.VALORORCADO, X.DIFERENCAPERCENTUAL, X.ANO, 'Positivos' AS POSNEG, X.FILIAL FROM CCONTA, (SELECT (SUM( CLANCA.VALOR ) /COUNT(CLANCA.LCTREF))* (COUNT(DISTINCT CLANCA.LCTREF) )AS VALORES, SUM( CORCAMENTO.VRMES2 ) / COUNT(DISTINCT CLANCA.LCTREF) AS VALORORCADO, ( ((SUM( CLANCA.VALOR ) /COUNT(CLANCA.LCTREF))* COUNT(DISTINCT CLANCA.LCTREF)) / (SUM( CORCAMENTO.VRMES2 ) / COUNT(DISTINCT CLANCA.LCTREF)) ) AS DIFERENCAPERCENTUAL, CCONTA.CODCOLIGADA COL , CCONTA.CODCONTA CONTA, DATEPART(YEAR,CLANCA.DATA) AS ANO, CLANCA.CODFILIAL AS FILIAL FROM CLANCA (NOLOCK) , CCONTA (NOLOCK), CORCAMENTO (NOLOCK) WHERE DATEPART(MONTH,CLANCA.DATA) = 1 AND CLANCA.CODCOLIGADA = 1 AND CCONTA.CODCONTA = CORCAMENTO.CODCONTA AND CORCAMENTO.ANO = DATEPART(YEAR,CLANCA.DATA) AND CORCAMENTO.CODCOLIGADA = 1 AND ( ((CLANCA.CREDITO=CCONTA.CODCONTA) AND (SUBSTRING(CCONTA.CODCONTA,1,1)= '4')) OR ((CLANCA.DEBITO=CCONTA.CODCONTA) AND (SUBSTRING(CCONTA.CODCONTA,1,1) = '3')) ) AND CCONTA.CODCOLIGADA = 1 AND ((CCONTA.CODCONTA LIKE '3%') OR (CCONTA.CODCONTA LIKE '4%')) GROUP BY SUBSTRING(CCONTA.CODCONTA,1,1), CCONTA.CODCONTA, DATEPART(YEAR,CLANCA.DATA), CCONTA.CODCOLIGADA, CCONTA.CODCONTA, CLANCA.CODFILIAL ) X WHERE CCONTA.CODCOLIGADA = X.COL AND CCONTA.CODCONTA = X.CONTA UNION ALL ( SELECT CCONTA.CODCONTA AS CONTACONTABIL, CCONTA.DESCRICAO AS DESCRICAO, X.VALORES, '$02' AS MES, X.VALORORCADO, X.DIFERENCAPERCENTUAL, X.ANO, 'Negativos' AS POSNEG, X.FILIAL FROM CCONTA, (SELECT (SUM( CLANCA.VALOR ) /COUNT(CLANCA.LCTREF))* (COUNT(DISTINCT CLANCA.LCTREF) ) *-1 AS VALORES, SUM( CORCAMENTO.VRMES2 ) / COUNT(DISTINCT CLANCA.LCTREF)*-1 AS VALORORCADO, ( ((SUM( CLANCA.VALOR ) /COUNT(CLANCA.LCTREF))* COUNT(DISTINCT CLANCA.LCTREF)) / (SUM( CORCAMENTO.VRMES2 ) / COUNT(DISTINCT CLANCA.LCTREF)) ) AS DIFERENCAPERCENTUAL, CCONTA.CODCOLIGADA COL , CCONTA.CODCONTA CONTA, DATEPART(YEAR,CLANCA.DATA) AS ANO, CLANCA.CODFILIAL AS FILIAL FROM CLANCA (NOLOCK) , CCONTA (NOLOCK), CORCAMENTO (NOLOCK) WHERE DATEPART(MONTH,CLANCA.DATA) = 1 AND CLANCA.CODCOLIGADA = 1 AND CCONTA.CODCONTA = CORCAMENTO.CODCONTA AND CORCAMENTO.ANO = DATEPART(YEAR,CLANCA.DATA) AND CORCAMENTO.CODCOLIGADA = 1 AND ( ((CLANCA.CREDITO=CCONTA.CODCONTA) AND (SUBSTRING(CCONTA.CODCONTA,1,1)= '3')) OR ((CLANCA.DEBITO=CCONTA.CODCONTA) AND (SUBSTRING(CCONTA.CODCONTA,1,1) = '4')) ) AND CCONTA.CODCOLIGADA = 1 AND ((CCONTA.CODCONTA LIKE '3%') OR (CCONTA.CODCONTA LIKE '4%')) GROUP BY SUBSTRING(CCONTA.CODCONTA,1,1), CCONTA.CODCONTA, DATEPART(YEAR,CLANCA.DATA), CCONTA.CODCOLIGADA, CCONTA.CODCONTA, CLANCA.CODFILIAL ) X WHERE CCONTA.CODCOLIGADA = X.COL AND CCONTA.CODCONTA = X.CONTA ) UNION ALL SELECT CCONTA.CODCONTA AS CONTACONTABIL, CCONTA.DESCRICAO AS DESCRICAO, M.VALORES, '*03' AS MES, M.VALORORCADO, M.DIFERENCAPERCENTUAL, M.ANO, 'Positivos' AS POSNEG, M.FILIAL FROM CCONTA, (SELECT (SUM( CLANCA.VALOR ) /COUNT(CLANCA.LCTREF))* (COUNT(DISTINCT CLANCA.LCTREF) )AS VALORES, SUM( CORCAMENTO.VRMES3 ) / COUNT(DISTINCT CLANCA.LCTREF) AS VALORORCADO, ( ((SUM( CLANCA.VALOR ) /COUNT(CLANCA.LCTREF))* COUNT(DISTINCT CLANCA.LCTREF)) / (SUM( CORCAMENTO.VRMES3 ) / COUNT(DISTINCT CLANCA.LCTREF)) ) AS DIFERENCAPERCENTUAL, CCONTA.CODCOLIGADA COL , CCONTA.CODCONTA CONTA, DATEPART(YEAR,CLANCA.DATA) AS ANO, CLANCA.CODFILIAL AS FILIAL FROM CLANCA (NOLOCK) , CCONTA (NOLOCK), CORCAMENTO (NOLOCK) WHERE DATEPART(MONTH,CLANCA.DATA) = 1 AND CLANCA.CODCOLIGADA = 1 AND CCONTA.CODCONTA = CORCAMENTO.CODCONTA AND CORCAMENTO.ANO = DATEPART(YEAR,CLANCA.DATA) AND CORCAMENTO.CODCOLIGADA = 1 AND ( ((CLANCA.CREDITO=CCONTA.CODCONTA) AND (SUBSTRING(CCONTA.CODCONTA,1,1)= '4')) OR ((CLANCA.DEBITO=CCONTA.CODCONTA) AND (SUBSTRING(CCONTA.CODCONTA,1,1) = '3')) ) AND CCONTA.CODCOLIGADA = 1 AND ((CCONTA.CODCONTA LIKE '3%') OR (CCONTA.CODCONTA LIKE '4%')) GROUP BY SUBSTRING(CCONTA.CODCONTA,1,1), CCONTA.CODCONTA, DATEPART(YEAR,CLANCA.DATA), CCONTA.CODCOLIGADA, CCONTA.CODCONTA, CLANCA.CODFILIAL ) M WHERE CCONTA.CODCOLIGADA = M.COL AND CCONTA.CODCONTA = M.CONTA Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
fabio_consultor Postado 10 de Setembro de 2008 Tópicos Que Criei: 83 Tópicos/Dia: 0.01 Meu Conteúdo: 433 Conteúdo/Dia: 0.07 Reputação: 0 Pontos/Conquistas: 2.980 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Idade: 53 Autor Denunciar Compartilhar Postado 10 de Setembro de 2008 Esquecam a sql anterior: Só falta um detalhe preciso que o valor debito busque somente os lancamentos a debito porem ele esta repetindo o valor do credito, imagino que seja coisa facil porem ja estou no limite. Algume pode me ajudar a finalizar e assim todos terao um cubo de realizado x orçado. (SELECT CCONTA.DESCRICAO AS DESCRICAO,(SUM( CLANCA.VALOR ) /COUNT(CLANCA.LCTREF))* (COUNT(DISTINCT CLANCA.LCTREF) )AS VALORES_CREDITO, SUM( CORCAMENTO.VRMES2 ) / COUNT(DISTINCT CLANCA.LCTREF) AS VALORORCADO, CLANCA.DATA, ( ((SUM( CLANCA.VALOR ) /COUNT(CLANCA.LCTREF))* COUNT(DISTINCT CLANCA.LCTREF)) / (SUM( CORCAMENTO.VRMES2 ) / COUNT(DISTINCT CLANCA.LCTREF)) ) AS DIFERENCAPERCENTUAL, CCONTA.CODCOLIGADA COL , CCONTA.CODCONTA CONTA, DATEPART(YEAR,CLANCA.DATA) AS ANO, DATEPART(MONTH,CLANCA.DATA) AS MES, CLANCA.CODFILIAL AS FILIAL FROM CLANCA (NOLOCK) , CCONTA (NOLOCK), CORCAMENTO (NOLOCK) WHERE CLANCA.CODCOLIGADA = 1 AND CCONTA.CODCONTA = CORCAMENTO.CODCONTA AND CORCAMENTO.ANO = DATEPART(YEAR,CLANCA.DATA) AND CORCAMENTO.CODCOLIGADA = 1 AND (((CLANCA.CREDITO=CCONTA.CODCONTA) AND (SUBSTRING(CCONTA.CODCONTA,1,1)= '4'))) AND CCONTA.CODCOLIGADA = 1 AND (CCONTA.CODCONTA LIKE '4%') GROUP BY SUBSTRING(CCONTA.CODCONTA,1,1), CCONTA.CODCONTA, DATEPART(YEAR,CLANCA.DATA), CCONTA.CODCOLIGADA, CCONTA.CODCONTA, CLANCA.CODFILIAL, CLANCA.DATA, CCONTA.DESCRICAO ) Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
fabio_consultor Postado 11 de Setembro de 2008 Tópicos Que Criei: 83 Tópicos/Dia: 0.01 Meu Conteúdo: 433 Conteúdo/Dia: 0.07 Reputação: 0 Pontos/Conquistas: 2.980 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Idade: 53 Autor Denunciar Compartilhar Postado 11 de Setembro de 2008 segue o cubo pronto: (SELECT CCONTA.DESCRICAO AS DESCRICAO,(SUM( CLANCA.VALOR ) /COUNT(CLANCA.LCTREF))* (COUNT(DISTINCT CLANCA.LCTREF) )AS VALORES, SUM(CORCAMENTO.VRMES2)/(COUNT(DISTINCT CLANCA.LCTREF)) AS VALORORCADO, CLANCA.DATA, ( ((SUM( CLANCA.VALOR ) /COUNT(CLANCA.LCTREF))* COUNT(DISTINCT CLANCA.LCTREF)) / (SUM( CORCAMENTO.VRMES2 ) / COUNT(DISTINCT CLANCA.LCTREF)) ) AS DIFERENCAPERCENTUAL, CCONTA.CODCOLIGADA COL , CCONTA.CODCONTA CONTA, DATEPART(YEAR,CLANCA.DATA) AS ANO, DATEPART(MONTH,CLANCA.DATA) AS MES, CLANCA.CODFILIAL AS FILIAL FROM CLANCA (NOLOCK) , CCONTA (NOLOCK), CORCAMENTO (NOLOCK) WHERE CLANCA.CODCOLIGADA = 1 AND CCONTA.CODCONTA = CORCAMENTO.CODCONTA AND CORCAMENTO.ANO = DATEPART(YEAR,CLANCA.DATA) AND CORCAMENTO.CODCOLIGADA = 1 AND (((CLANCA.DEBITO=CCONTA.CODCONTA) AND (SUBSTRING(CCONTA.CODCONTA,1,1)= '4'))) AND CCONTA.CODCOLIGADA = 1 AND (CCONTA.CODCONTA LIKE '4%') GROUP BY SUBSTRING(CCONTA.CODCONTA,1,1), CCONTA.CODCONTA, DATEPART(YEAR,CLANCA.DATA), CCONTA.CODCOLIGADA, CCONTA.CODCONTA, CLANCA.CODFILIAL, CLANCA.DATA, CCONTA.DESCRICAO) Marcar como resolvido..... Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Emmanoel Souza Postado 8 de Junho de 2009 Tópicos Que Criei: 0 Tópicos/Dia: 0 Meu Conteúdo: 11 Conteúdo/Dia: 0.00 Reputação: 0 Pontos/Conquistas: 20 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Denunciar Compartilhar Postado 8 de Junho de 2009 Ninguem? Eu tenho rapaz mas dar um trabalho... * E-mail, MSN e SKYP retirados. somente membros VIPS tem permissão. Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Mauricio J. T. Postado 8 de Junho de 2009 Tópicos Que Criei: 134 Tópicos/Dia: 0.02 Meu Conteúdo: 1.225 Conteúdo/Dia: 0.19 Reputação: 2 Pontos/Conquistas: 7.400 Conteúdo Resolvido: 0 Dias Ganho: 1 Status: Offline Dispositivo: Windows Denunciar Compartilhar Postado 8 de Junho de 2009 Nao vai compartilhar ? Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Jair - Fórmula Postado 8 de Junho de 2009 Tópicos Que Criei: 899 Tópicos/Dia: 0.14 Meu Conteúdo: 8.841 Conteúdo/Dia: 1.34 Reputação: 310 Pontos/Conquistas: 106.574 Conteúdo Resolvido: 0 Dias Ganho: 195 Status: Online Idade: 52 Dispositivo: Windows Denunciar Compartilhar Postado 8 de Junho de 2009 Eu tenho rapaz mas dar um trabalho...msn = *********** skype = ******* Emmanuel, por que não posta aqui mesmo o que você tem, pra ajudar a todos ? Esse é o ideal do Fórum. Se todos temos informações que possam ser passadas aos demais colegas, mas passamos só por MSN ou SKYPE, o conteúdo do fórum fica limitado e para quem precisar da mesma informação futuramente, não a terá e não ser que procure com você por MSN ou SKYPE novamente, dependendo que ambos estejam on line, etc... e por ai vai... Se a sua intenção é apenas falar que tem, e não postar, melhor nem falar então. Ou mesmo se é um relatório muito complicado pra montar, e acha que não "DEVE" colocar de graça aqui, é um direito seu, sem problema. Apenas não fique dizendo que tem, simplesmente por falar e não posta nada !! Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Mauricio J. T. Postado 8 de Junho de 2009 Tópicos Que Criei: 134 Tópicos/Dia: 0.02 Meu Conteúdo: 1.225 Conteúdo/Dia: 0.19 Reputação: 2 Pontos/Conquistas: 7.400 Conteúdo Resolvido: 0 Dias Ganho: 1 Status: Offline Dispositivo: Windows Denunciar Compartilhar Postado 8 de Junho de 2009 Bôa Jair.... Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Vanessa Menêses Postado 29 de Junho de 2009 Tópicos Que Criei: 2 Tópicos/Dia: 0.00 Meu Conteúdo: 13 Conteúdo/Dia: 0.00 Reputação: 0 Pontos/Conquistas: 82 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Idade: 45 Denunciar Compartilhar Postado 29 de Junho de 2009 Fábio, Veja se esse cubo resolve.... SELECT CCONTA.CODCONTA AS CONTACONTABIL, CCONTA.DESCRICAO AS DESCRICAOCONTA, SUM(CLANCA.VALOR) AS REALIZADO,CORCAMENTO.CODCCUSTO,GCCUSTO.NOME, (CASE DATEPART(MONTH,CLANCA.DATA) WHEN 1 THEN SUM(CORCAMENTO.VRMES1) WHEN 2 THEN SUM(CORCAMENTO.VRMES2) WHEN 3 THEN SUM(CORCAMENTO.VRMES3) WHEN 4 THEN SUM(CORCAMENTO.VRMES4) WHEN 5 THEN SUM(CORCAMENTO.VRMES5) WHEN 6 THEN SUM(CORCAMENTO.VRMES6) WHEN 7 THEN SUM(CORCAMENTO.VRMES7) WHEN 8 THEN SUM(CORCAMENTO.VRMES8) WHEN 9 THEN SUM(CORCAMENTO.VRMES9) WHEN 10 THEN SUM(CORCAMENTO.VRMES10) WHEN 11 THEN SUM(CORCAMENTO.VRMES11) WHEN 12 THEN SUM(CORCAMENTO.VRMES12) END) AS ORCADO, (CASE DATEPART(MONTH,CLANCA.DATA) WHEN 1 THEN SUM(CORCAMENTO.VRMES1)- SUM(CLANCA.VALOR) WHEN 2 THEN SUM(CORCAMENTO.VRMES2)-SUM(CLANCA.VALOR) WHEN 3 THEN SUM(CORCAMENTO.VRMES3)-SUM(CLANCA.VALOR) WHEN 4 THEN SUM(CORCAMENTO.VRMES4)-SUM(CLANCA.VALOR) WHEN 5 THEN SUM(CORCAMENTO.VRMES5)-SUM(CLANCA.VALOR) WHEN 6 THEN SUM(CORCAMENTO.VRMES6)-SUM(CLANCA.VALOR) WHEN 7 THEN SUM(CORCAMENTO.VRMES7)-SUM(CLANCA.VALOR) WHEN 8 THEN SUM(CORCAMENTO.VRMES8)-SUM(CLANCA.VALOR) WHEN 9 THEN SUM(CORCAMENTO.VRMES9)-SUM(CLANCA.VALOR) WHEN 10 THEN SUM(CORCAMENTO.VRMES10)-SUM(CLANCA.VALOR) WHEN 11 THEN SUM(CORCAMENTO.VRMES11)-SUM(CLANCA.VALOR) WHEN 12 THEN SUM(CORCAMENTO.VRMES12)-SUM(CLANCA.VALOR) END) AS R$, (CASE DATEPART(MONTH,CLANCA.DATA) WHEN 1 THEN '01 - Janeiro' WHEN 2 THEN '02 - Fevereiro' WHEN 3 THEN '03 - Março' WHEN 4 THEN '04 - Abril' WHEN 5 THEN '05 - Maio' WHEN 6 THEN '06 - Junho' WHEN 7 THEN '07 - Julho' WHEN 8 THEN '08 - Agosto' WHEN 9 THEN '09 - Setembro' WHEN 10 THEN '10 - Outubro' WHEN 11 THEN '11 - Novembro' WHEN 12 THEN '12 - Dezembro' END)AS MES, DATEPART(YEAR,CLANCA.DATA) AS ANO, (CASE SUBSTRING(CCONTA.CODCONTA,1,1) WHEN 3 THEN 'RECEITA' WHEN 4 THEN 'DESPESAS'END) AS RECDES, 'Positivos' AS POSNEG, GFILIAL.NOME AS DESCRICAOFILIAL FROM CLANCA (NOLOCK), CCONTA (NOLOCK), GFILIAL (NOLOCK), CORCAMENTO (NOLOCK),GCCUSTO WHERE (CLANCA.CODCOLIGADA = 1) AND ( ((CLANCA.CREDITO = CCONTA.CODCONTA) AND (SUBSTRING(CCONTA.CODCONTA,1,1) = '4')) OR ((CLANCA.CREDITO = CCONTA.CODCONTA) AND (SUBSTRING(CCONTA.CODCONTA,1,1) = '3')) ) AND (DATEPART(YEAR,CLANCA.DATA)>=:ANOI_N AND DATEPART(YEAR,CLANCA.DATA)<=:ANOF_N ) AND (CORCAMENTO.ANO>=:ANOI_N AND CORCAMENTO.ANO<=:ANOF_N ) AND (CLANCA.CODFILIAL = GFILIAL.CODFILIAL) AND (GFILIAL.CODCOLIGADA = 1) AND (CCONTA.CODCOLIGADA = 1) AND ((CCONTA.CODCONTA LIKE '3%') OR (CCONTA.CODCONTA LIKE '4%')) AND(CCONTA.CODCOLIGADA = 1) AND (CORCAMENTO.CODCONTA = CCONTA.CODCONTA) AND (CORCAMENTO.CODCOLIGADA = CCONTA.CODCOLIGADA) AND (SUBSTRING(CORCAMENTO.CODCONTA,1,1) = SUBSTRING(CCONTA.CODCONTA,1,1)) AND CORCAMENTO.CODCCUSTO=GCCUSTO.CODCCUSTO AND CORCAMENTO.CODCCUSTO=CLANCA.CODCCUSTO GROUP BY GFILIAL.NOME,CORCAMENTO.CODCCUSTO,GCCUSTO.NOME,CCONTA.CODCONTA, CCONTA.DESCRICAO,CLANCA.DATA,CLANCA.VALOR, SUBSTRING(CCONTA.CODCONTA,1,1) UNION ALL( SELECT CCONTA.CODCONTA AS CONTACONTABIL, CCONTA.DESCRICAO AS DESCRICAOCONTA, (SUM(CLANCA.VALOR)*-1) AS REALIZADO, CORCAMENTO.CODCCUSTO,GCCUSTO.NOME, (CASE DATEPART(MONTH,CLANCA.DATA) WHEN 1 THEN SUM(CORCAMENTO.VRMES1) WHEN 2 THEN SUM(CORCAMENTO.VRMES2) WHEN 3 THEN SUM(CORCAMENTO.VRMES3) WHEN 4 THEN SUM(CORCAMENTO.VRMES4) WHEN 5 THEN SUM(CORCAMENTO.VRMES5) WHEN 6 THEN SUM(CORCAMENTO.VRMES6) WHEN 7 THEN SUM(CORCAMENTO.VRMES7) WHEN 8 THEN SUM(CORCAMENTO.VRMES8) WHEN 9 THEN SUM(CORCAMENTO.VRMES9) WHEN 10 THEN SUM(CORCAMENTO.VRMES10) WHEN 11 THEN SUM(CORCAMENTO.VRMES11) WHEN 12 THEN SUM(CORCAMENTO.VRMES12) END) AS ORCADO, (CASE DATEPART(MONTH,CLANCA.DATA) WHEN 1 THEN SUM(CORCAMENTO.VRMES1)- SUM(CLANCA.VALOR) WHEN 2 THEN SUM(CORCAMENTO.VRMES2)-SUM(CLANCA.VALOR) WHEN 3 THEN SUM(CORCAMENTO.VRMES3)-SUM(CLANCA.VALOR) WHEN 4 THEN SUM(CORCAMENTO.VRMES4)-SUM(CLANCA.VALOR) WHEN 5 THEN SUM(CORCAMENTO.VRMES5)-SUM(CLANCA.VALOR) WHEN 6 THEN SUM(CORCAMENTO.VRMES6)-SUM(CLANCA.VALOR) WHEN 7 THEN SUM(CORCAMENTO.VRMES7)-SUM(CLANCA.VALOR) WHEN 8 THEN SUM(CORCAMENTO.VRMES8)-SUM(CLANCA.VALOR) WHEN 9 THEN SUM(CORCAMENTO.VRMES9)-SUM(CLANCA.VALOR) WHEN 10 THEN SUM(CORCAMENTO.VRMES10)-SUM(CLANCA.VALOR) WHEN 11 THEN SUM(CORCAMENTO.VRMES11)-SUM(CLANCA.VALOR) WHEN 12 THEN SUM(CORCAMENTO.VRMES12)-SUM(CLANCA.VALOR) END) AS R$, (CASE DATEPART(MONTH,CLANCA.DATA) WHEN 1 THEN '01 - Janeiro' WHEN 2 THEN '02 - Fevereiro' WHEN 3 THEN '03 - Março' WHEN 4 THEN '04 - Abril' WHEN 5 THEN '05 - Maio' WHEN 6 THEN '06 - Junho' WHEN 7 THEN '07 - Julho' WHEN 8 THEN '08 - Agosto' WHEN 9 THEN '09 - Setembro' WHEN 10 THEN '10 - Outubro' WHEN 11 THEN '11 - Novembro' WHEN 12 THEN '12 - Dezembro' END)AS MES, DATEPART(YEAR,CLANCA.DATA) AS ANO, (CASE SUBSTRING(CCONTA.CODCONTA,1,1) WHEN 3 THEN 'RECEITA' WHEN 4 THEN 'DESPESAS'END)AS RECDES, 'Negativos' AS POSNEG, GFILIAL.NOME AS DESCRICAOFILIAL FROM CLANCA (NOLOCK) ,CCONTA (NOLOCK), GFILIAL (NOLOCK), CORCAMENTO (NOLOCK), GCCUSTO WHERE (CLANCA.CODCOLIGADA = 1) AND ( ((CLANCA.DEBITO = CCONTA.CODCONTA) AND (SUBSTRING(CCONTA.CODCONTA,1,1) = '3')) OR ((CLANCA.DEBITO = CCONTA.CODCONTA) AND (SUBSTRING(CCONTA.CODCONTA,1,1) = '4')) ) AND (CLANCA.CODFILIAL = GFILIAL.CODFILIAL) AND (GFILIAL.CODCOLIGADA = 1) AND (CCONTA.CODCOLIGADA = 1) AND ((CCONTA.CODCONTA LIKE '3%') OR (CCONTA.CODCONTA LIKE '4%')) AND (CLANCA.CODFILIAL = GFILIAL.CODFILIAL) AND (GFILIAL.CODCOLIGADA = 1) AND (CCONTA.CODCOLIGADA = 1) AND ((CCONTA.CODCONTA LIKE '3%') OR (CCONTA.CODCONTA LIKE '4%')) AND(CCONTA.CODCOLIGADA = 1) AND (CORCAMENTO.CODCONTA = CCONTA.CODCONTA) AND (CORCAMENTO.CODCOLIGADA = CCONTA.CODCOLIGADA) AND (SUBSTRING(CORCAMENTO.CODCONTA,1,1) = SUBSTRING(CCONTA.CODCONTA,1,1)) AND (DATEPART(YEAR,CLANCA.DATA)>=:ANOI_N AND DATEPART(YEAR,CLANCA.DATA)<=:ANOF_N ) AND (CORCAMENTO.ANO>=:ANOI_N AND CORCAMENTO.ANO<=:ANOF_N ) AND CORCAMENTO.CODCCUSTO=GCCUSTO.CODCCUSTO AND CORCAMENTO.CODCCUSTO=CLANCA.CODCCUSTO GROUP BY GFILIAL.NOME,CORCAMENTO.CODCCUSTO,GCCUSTO.NOME,CCONTA.CODCONTA, CCONTA.DESCRICAO,CLANCA.DATA,CLANCA.VALOR, SUBSTRING(CCONTA.CODCONTA,1,1) ) Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Alexon Postado 10 de Março de 2011 Tópicos Que Criei: 7 Tópicos/Dia: 0.00 Meu Conteúdo: 20 Conteúdo/Dia: 0.00 Reputação: 0 Pontos/Conquistas: 165 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Denunciar Compartilhar Postado 10 de Março de 2011 (editado) Segue o cubo retornando o REALIZADO perfeitamente, porem, o Valor orçado esta sendo duplicado toda vez que ele verifica um valor na conta, ou seja, se a conta tiver 5 lançamentos ele multiplica o valor do VRMESXX, se alguem conseguir ajudar a identificar o erro, ia me ajudar muito. Abraços Alexon DECLARE @NOMEMES VARCHAR(520) SET @NOMEMES = '01 - JANEIRO 02 - FEVEREIRO03 - MARÇO 04 - ABRIL 05 - MAIO 06 - JUNHO 07 - JULHO 08 - AGOSTO 09 - SETEMBRO 10 - OUTUBRO 11 - NOVEMBRO 12 - DEZEMBRO ' SELECT CCONTA.CODCONTA AS CONTACONTABIL, CCONTA.DESCRICAO AS DESCRICAOCONTA, (SUM(CLANCA.VALOR)*(-1)) AS REALIZADO, CORCAMENTO.CODCCUSTO,GCCUSTO.NOME, (CASE DATEPART(MONTH,CLANCA.DATA) WHEN 1 THEN SUM(CORCAMENTO.VRMES1) WHEN 2 THEN SUM(CORCAMENTO.VRMES2) WHEN 3 THEN SUM(CORCAMENTO.VRMES3) WHEN 4 THEN SUM(CORCAMENTO.VRMES4) WHEN 5 THEN SUM(CORCAMENTO.VRMES5) WHEN 6 THEN SUM(CORCAMENTO.VRMES6) WHEN 7 THEN SUM(CORCAMENTO.VRMES7) WHEN 8 THEN SUM(CORCAMENTO.VRMES8) WHEN 9 THEN SUM(CORCAMENTO.VRMES9) WHEN 10 THEN SUM(CORCAMENTO.VRMES10) WHEN 11 THEN SUM(CORCAMENTO.VRMES11) WHEN 12 THEN SUM(CORCAMENTO.VRMES12) END) AS ORCADO, (CASE DATEPART(MONTH,CLANCA.DATA) WHEN 1 THEN SUM(CORCAMENTO.VRMES1)- SUM(CLANCA.VALOR) WHEN 2 THEN SUM(CORCAMENTO.VRMES2)-SUM(CLANCA.VALOR) WHEN 3 THEN SUM(CORCAMENTO.VRMES3)-SUM(CLANCA.VALOR) WHEN 4 THEN SUM(CORCAMENTO.VRMES4)-SUM(CLANCA.VALOR) WHEN 5 THEN SUM(CORCAMENTO.VRMES5)-SUM(CLANCA.VALOR) WHEN 6 THEN SUM(CORCAMENTO.VRMES6)-SUM(CLANCA.VALOR) WHEN 7 THEN SUM(CORCAMENTO.VRMES7)-SUM(CLANCA.VALOR) WHEN 8 THEN SUM(CORCAMENTO.VRMES8)-SUM(CLANCA.VALOR) WHEN 9 THEN SUM(CORCAMENTO.VRMES9)-SUM(CLANCA.VALOR) WHEN 10 THEN SUM(CORCAMENTO.VRMES10)-SUM(CLANCA.VALOR) WHEN 11 THEN SUM(CORCAMENTO.VRMES11)-SUM(CLANCA.VALOR) WHEN 12 THEN SUM(CORCAMENTO.VRMES12)-SUM(CLANCA.VALOR) END) AS R$, SUBSTRING(@NOMEMES, (DATEPART(MONTH,CLANCA.DATA) * 14)-13, 14) AS MES, DATEPART(YEAR,CLANCA.DATA) AS ANO, (CASE SUBSTRING(CCONTA.CODCONTA,1,1) WHEN 3 THEN 'RECEITA' WHEN 4 THEN 'DESPESAS' END)AS RECDES, 'Negativos' AS POSNEG, GFILIAL.NOME AS DESCRICAOFILIAL FROM CLANCA CLANCA INNER JOIN CCONTA CCONTA ON ( CLANCA.CODCOLIGADA = CCONTA.CODCOLIGADA AND ((CLANCA.DEBITO = CCONTA.CODCONTA) AND (SUBSTRING(CCONTA.CODCONTA,1,1) = '3')) OR ((CLANCA.DEBITO = CCONTA.CODCONTA) AND (SUBSTRING(CCONTA.CODCONTA,1,1) = '4'))) INNER JOIN GFILIAL GFILIAL ON (GFILIAL.CODCOLIGADA = CLANCA.CODCOLIGADA AND GFILIAL.CODFILIAL = CLANCA.CODFILIAL ) LEFT JOIN CORCAMENTO CORCAMENTO ON (CORCAMENTO.CODCOLIGADA = CCONTA.CODCOLIGADA AND CORCAMENTO.CODCONTA = CCONTA.CODCONTA AND CLANCA.CODCCUSTO = CORCAMENTO.CODCCUSTO) LEFT JOIN GCCUSTO GCCUSTO ON (GCCUSTO.CODCOLIGADA = CORCAMENTO.CODCOLIGADA AND GCCUSTO.CODCCUSTO = CORCAMENTO.CODCCUSTO ) WHERE CLANCA.CODCOLIGADA = 1 AND ((CCONTA.CODCONTA LIKE '3%') OR (CCONTA.CODCONTA LIKE '4%')) AND DATEPART(YEAR,CLANCA.DATA) BETWEEN '2011' AND '2011' GROUP BY GFILIAL.NOME,CORCAMENTO.CODCCUSTO,GCCUSTO.NOME,CCONTA.CODCONTA, CCONTA.DESCRICAO,CLANCA.DATA,CLANCA.VALOR, SUBSTRING(CCONTA.CODCONTA,1,1) Editado 10 de Março de 2011 por Alexon Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Posts Recomendados
Participe da conversa
Você pode postar agora, e se registrar mais tarde. Se você tiver uma conta, faça o login agora para postar com sua conta.