Capturar nome da tabela do dataset
Boa tarde!
Fiz uma método de log de usuários, pego o nome da tabela pela função "IProviderSupport(DataSetSource).PSGetTableName", só que apareceu um problema, a minha consulta tem um sub-select para trazer um campo calculado de outra tabela, e a nome tabela que esta retornando é a do sub-select, muitas das minhas consultas são com "JOIN", traz sempre a tabela correta, mas nesse caso esta trazendo errado.
Coloquei no provider no GetTableName o nome da tabela mesmo assim não deu certo.
Fiz uma método de log de usuários, pego o nome da tabela pela função "IProviderSupport(DataSetSource).PSGetTableName", só que apareceu um problema, a minha consulta tem um sub-select para trazer um campo calculado de outra tabela, e a nome tabela que esta retornando é a do sub-select, muitas das minhas consultas são com "JOIN", traz sempre a tabela correta, mas nesse caso esta trazendo errado.
Coloquei no provider no GetTableName o nome da tabela mesmo assim não deu certo.
Everton Gonçalves
Curtidas 0
Respostas
Everton Gonçalves
01/07/2016
?????
GOSTEI 0
Dorivan Sousa
01/07/2016
qual o banco de dados?
select from (select campo1, campo2, (select campo from tabelaY) from tabelaX) as NomeTabela
join 1
join 2
join n
tenta nomear a consulta com o nome que vc quer e faz os joins abaixo
select from (select campo1, campo2, (select campo from tabelaY) from tabelaX) as NomeTabela
join 1
join 2
join n
tenta nomear a consulta com o nome que vc quer e faz os joins abaixo
GOSTEI 0
Everton Gonçalves
01/07/2016
uso banco de dados mysql,
Essa é a minha consulta
SELECT A.*,B.NOME AS NOMECIDADE,C.NOME AS NOME_USUARIO,
(SELECT (A.LIMITE - COALESCE(SUM(VALOR-VALOR_RECEBIDO),0)) AS SALDO FROM CONTAS_RECEBER
WHERE ID_EMITENTE = A.ID_EMITENTE AND BAIXADO = 'N'
AND ID_EMPRESA = 0) AS SALDO
FROM EMITENTES A
LEFT JOIN CIDADES B ON A.ID_CIDADE = B.ID_CIDADE
LEFT JOIN USUARIOS C ON A.ID_USUARIO = C.ID_USUARIO
Essa é a minha consulta
SELECT A.*,B.NOME AS NOMECIDADE,C.NOME AS NOME_USUARIO,
(SELECT (A.LIMITE - COALESCE(SUM(VALOR-VALOR_RECEBIDO),0)) AS SALDO FROM CONTAS_RECEBER
WHERE ID_EMITENTE = A.ID_EMITENTE AND BAIXADO = 'N'
AND ID_EMPRESA = 0) AS SALDO
FROM EMITENTES A
LEFT JOIN CIDADES B ON A.ID_CIDADE = B.ID_CIDADE
LEFT JOIN USUARIOS C ON A.ID_USUARIO = C.ID_USUARIO
GOSTEI 0