SHAPE - SELECT COM HIERARQUIA
SHAPE (select cooperado.matricula,cooperado.cooperado,profissoes.profissao from cooperado
inner join profissoes on cooperado.id_profissao = profissoes.id_profissao)
APPEND ({Select l.data,l.he,l.hsr,l.her,l.hs,v.valorhora,
cast(l.minutos/60.0 as real) as [ô]Horas_dia[ô],
cast((l.minutos/60.0)as real) * v.valorhora as [ô]total[ô],
case(t.id_centrocusto) when null then t.id_descritivo else t.id_centrocusto end as [ô]id_centrocusto[ô],
t.centrocusto,t.setor,l.horario,
case(l.status) when 0 then [ô]A[ô] else [ô]F[ô] end as [ô]Status[ô],
profissoes.profissao,cooperado.Ref_Ades,case when l.data between f.data_ades and f.data_cancel_ades
and f.id_cliente = [ô]98[ô] and l.minutos >=[ô]366[ô]
and l.ic_ref = 1 then [ô]3,66[ô] else [ô]0[ô] end as Valor_Ref,
(cast((l.minutos/60.0)as real) * v.valorhora) * 0.035 as [ô]Taxa[ô] from apt_lancamento_cooperado l
inner join cooperado on l.id_cooperado = cooperado.id_cooperado
left join apt_refeicao f on cooperado.id_cooperado = f.id_cooperado and f.id_cliente = [ô]98[ô]
inner join profissoes on cooperado.id_profissao = profissoes.id_profissao
inner join apt_centrocusto t on l.id_centrocusto = t.id_centrocusto
inner join apt_valorhora v on cooperado.id_profissao = v.id_profissao
and l.horario = v.horario and t.setor = v.setor and l.id_cliente = v.id_cliente
where data between [ô]2011-07-01[ô] and [ô]2011-07-15[ô] and l.Id_Cliente = [ô]98[ô]
and l.id_cliente = [ô]98[ô] and l.status = 0 order by cooperado.cooperado,l.data,l.id_apontamento} AS Filho_Detalhes1
RELATE cooperado.matricula TO cooperado.matricula) AS Filho_Detalhes1
Estou tentando executar um Select com hierarquia em um MS-SQL 2000 e em um MySQL 5.5, mas esta retornando este erro, porém não consegui corrigir.
---------------------------------------------------------------------------
Erro
Mensagem 170, NÃvel 15, Estado 1, Linha 4
Line 4: Incorrect syntax near [ô]APPEND[ô].
Mensagem 170, NÃvel 15, Estado 1, Linha 21
Line 21: Incorrect syntax near [ô]}[ô].
---------------------------------------------------------------------------
inner join profissoes on cooperado.id_profissao = profissoes.id_profissao)
APPEND ({Select l.data,l.he,l.hsr,l.her,l.hs,v.valorhora,
cast(l.minutos/60.0 as real) as [ô]Horas_dia[ô],
cast((l.minutos/60.0)as real) * v.valorhora as [ô]total[ô],
case(t.id_centrocusto) when null then t.id_descritivo else t.id_centrocusto end as [ô]id_centrocusto[ô],
t.centrocusto,t.setor,l.horario,
case(l.status) when 0 then [ô]A[ô] else [ô]F[ô] end as [ô]Status[ô],
profissoes.profissao,cooperado.Ref_Ades,case when l.data between f.data_ades and f.data_cancel_ades
and f.id_cliente = [ô]98[ô] and l.minutos >=[ô]366[ô]
and l.ic_ref = 1 then [ô]3,66[ô] else [ô]0[ô] end as Valor_Ref,
(cast((l.minutos/60.0)as real) * v.valorhora) * 0.035 as [ô]Taxa[ô] from apt_lancamento_cooperado l
inner join cooperado on l.id_cooperado = cooperado.id_cooperado
left join apt_refeicao f on cooperado.id_cooperado = f.id_cooperado and f.id_cliente = [ô]98[ô]
inner join profissoes on cooperado.id_profissao = profissoes.id_profissao
inner join apt_centrocusto t on l.id_centrocusto = t.id_centrocusto
inner join apt_valorhora v on cooperado.id_profissao = v.id_profissao
and l.horario = v.horario and t.setor = v.setor and l.id_cliente = v.id_cliente
where data between [ô]2011-07-01[ô] and [ô]2011-07-15[ô] and l.Id_Cliente = [ô]98[ô]
and l.id_cliente = [ô]98[ô] and l.status = 0 order by cooperado.cooperado,l.data,l.id_apontamento} AS Filho_Detalhes1
RELATE cooperado.matricula TO cooperado.matricula) AS Filho_Detalhes1
Estou tentando executar um Select com hierarquia em um MS-SQL 2000 e em um MySQL 5.5, mas esta retornando este erro, porém não consegui corrigir.
---------------------------------------------------------------------------
Erro
Mensagem 170, NÃvel 15, Estado 1, Linha 4
Line 4: Incorrect syntax near [ô]APPEND[ô].
Mensagem 170, NÃvel 15, Estado 1, Linha 21
Line 21: Incorrect syntax near [ô]}[ô].
---------------------------------------------------------------------------
Não tenho certeza, mas acho que MySQL não suporta DataShaping com tabelas MyISAM, talvez, e somente talvez, se converter essas tabelas para InnoDB
Obrigado pela atenção,
No mysql já estão em innoDB.
E no caso do MS-SQL????
No mysql já estão em innoDB.
E no caso do MS-SQL????
como está sua string de conexão? acho que são necessários dois Providers:
[Ô]Provider=MSDatashape; Data Provider = um provider do mysql qualquer[Ô]
[Ô]Provider=MSDatashape; Data Provider = um provider do mysql qualquer[Ô]
Minha conexão não esta assim.
Esta assim
Driver={MySQL ODBC 5.1 Driver};Server=localhost;Database=banco;User=root; Password=senha;Option=3;
ou assim
Provider=SQLOLEDB.1;Password=;Persist Security Info=True;User Id=sa;Initial Catalog=banco;Data Source=server
Mas mesmo que seja a conexão, o problema atual é que não esta rodando dentro do servidor (usando SQL Server Management Studio ou o MySQL Workbench 5.2 CE)
Porem LLaia vou usar sua dica quando passar para o aplicativo.
Continuo no aguardo.
Grato.
Esta assim
Driver={MySQL ODBC 5.1 Driver};Server=localhost;Database=banco;User=root; Password=senha;Option=3;
ou assim
Provider=SQLOLEDB.1;Password=;Persist Security Info=True;User Id=sa;Initial Catalog=banco;Data Source=server
Mas mesmo que seja a conexão, o problema atual é que não esta rodando dentro do servidor (usando SQL Server Management Studio ou o MySQL Workbench 5.2 CE)
Porem LLaia vou usar sua dica quando passar para o aplicativo.
Continuo no aguardo.
Grato.
Tópico encerrado , respostas não são mais permitidas