Respondido Union (Não Grava)

  • sexta-feira, 21 de julho de 2006 09:50
     
     

    ESTOU TENDO UM SÉRIO PROBLEMA COM UNION.
    PRECISO FAZER UMA CONSULTA NA TABELA DE MOVIMENTO DE ESTOQUE, ONDE TENHO FILIAL,PRODUTO,SALDO E TipoMOV, ONDE TipoMOV INDICA QDO É ENTRADA OU SAÍDA DE MERCADORIA.

    VIEW DO SQL: (Exemplo de Código)

    SELECT FILIAL,PRODUTO,SALDO AS ENTRADA, 0 AS SAIDA FROM MOVI-ESTOQUE
    WHERE TipoMOV = 4
    UNION
    SELECT FILIAL,PRODUTO,0, SALDO
    FROM MOVI-ESTOQUE
    WHERE TipoMOV = 0
    ---------------------------------------
    OBS QUE AS CONSULTAS SAO DA MESMA TABELA
    NA 1ª GERA CONSULTA DE ENTRADA E NA 2ª A SAIDA DE MERCADORIA.
    A PRINCIPIO PARECE ESTAR TUDO CERTO, ATE TENHO ESTE TIPO DE CONSULTA FUNCIONANDO EM "ACCESS", MAS NO SQL SERVER 2000 ELE ATE REALIZA A CONSULTA
    APARECE AS DUAS COLUNAS ENTRADA E SAIDA, MAS NA HORA QUE VOU SALVAR OCORRE UM ERRO:
    ("VIEW DEFINITION NO OUTPUT COLUMNS OR INCLUDES NO ITEMS IN THE FROM CLAUSE.")

    E NAO ACEITA GRAVAR...
    AGRADEÇO DESDE JÁ A QUEM PUDER ME AJUDAR.

    Gamau

Todas as Respostas

  • sexta-feira, 21 de julho de 2006 11:07
    Moderador
     
     

    Cara nao vai funcionar, as tabelas nao pode ter alias, nem campos que nao existem na sua tabela, o que eu surigo e que vc. use uma procedure para fazer a atualizacao.

    Abs.

     

  • sexta-feira, 21 de julho de 2006 11:09
     
     

    Gamau ,

    Cara tenta assim acho que não vai ter problemas:

    CREATE VIEW dbo.Nomeview
    AS
    SELECT FILIAL,PRODUTO,SALDO AS ENTRADA, 0 AS SAIDA FROM MOVI-ESTOQUE
    WHERE TipoMOV = 4
    UNION
    SELECT FILIAL,PRODUTO,SALDO AS ENTRADA, 0 AS SAIDA FROM MOVI-ESTOQUE
    WHERE TipoMOV = 0

    Espero ter ajudado.

  • sexta-feira, 21 de julho de 2006 11:14
     
     

    Jymbr,

    Quando se utiliza o Union, é necessário a existência dos mesmos campos declaros nos selects para que não acha incompatibilidade, e também a table não pode receber um alias, tem que declarar o nome dela.

    Além da dica do Daniel, você já tentou utilizar um Join para fazer esta união, talvez possa dar certo.

    Pense nesta possibilidade!!!!

  • sábado, 22 de julho de 2006 00:31
     
     Respondido

    Parceiros, estou quase ficando desesperado.....

    Tentei fazer via SP, criar a VIEW mas reportou um erro tbem na hora de gravar a SP.

    E sem os Alias como vou nomear as colunas ENTRADA E SAIDA  uma vez que elas são a mesma.

    uma vez designado o tipo como compra e outra como venda.