Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > ETL > Talend
Talend Forum d'entraide sur Talend (Talend Open Studio, ...). Avant de poster --> FAQ Talend, Tutoriels Talend
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 08/08/2011, 15h48   #1
Futur Membre du Club
 
Inscription : juillet 2011
Messages : 99
Détails du profil
Informations forums :
Inscription : juillet 2011
Messages : 99
Points : 18
Points : 18
Par défaut est ce que Talend éxecute des requetes sql très complexes?

Bonjour tout le monde j'ai un fichier sql de centaines de lignes lorsque je l’exécute avec eclipse avec une connexion vers la base de données il s’exécute et donne des resultats sans erreurs, par contre avec talend je ne peux pas l’exécuter, comme si Talend exécute que des requetes simples de type select, order by...etc est ce que c'est vrai ou pas, svp merci de me répondre si quelqu'un a une réponse.
sinoun est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/08/2011, 09h21   #2
Membre Expert
 
Avatar de Benoit_Durand
 
Benoit Durand
Consultant en Business Intelligence Freelance
Inscription : mars 2005
Messages : 812
Détails du profil
Informations personnelles :
Nom : Benoit Durand
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Consultant en Business Intelligence Freelance

Informations forums :
Inscription : mars 2005
Messages : 812
Points : 1 084
Points : 1 084
Bonjour,
pourriez vous nous donner l'erreur retournée svp ?
__________________
Pensez à la fonction Recherche
Benoit_Durand est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/08/2011, 11h38   #3
Nouveau Membre du Club
 
Jef Lehembre
Consultant en Business Intelligence
Inscription : mars 2011
Messages : 41
Détails du profil
Informations personnelles :
Nom : Jef Lehembre
Localisation : France

Informations professionnelles :
Activité : Consultant en Business Intelligence

Informations forums :
Inscription : mars 2011
Messages : 41
Points : 34
Points : 34
et la requête aussi?

De mon côté, j'exécute parfois des requêtes assez complexes et elles passent sous talend.
Croaker est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/08/2011, 10h36   #4
Futur Membre du Club
 
Inscription : juillet 2011
Messages : 99
Détails du profil
Informations forums :
Inscription : juillet 2011
Messages : 99
Points : 18
Points : 18
Bonjour,
Enfaite moi j'ai un fichier.sql et je veux l’exécuter avec talend, mais je ne sais pas avec quel composant je l’exécute et lorsque je mes le fichier dans requête stockée de la partie connexion metadonnées (à gauche) il affiche rien tandis qu'il est bien exécuté avec eclipse.
Voici le sql:
delete from SIMCO.BX_GERAppe;



insert into SIMCO.BX_GERAppe
select
'1' As Departement, RegionOperationnelle as NomDepartement,
bai.d01ste as societe, d01rs1 as NomSociete,
g10mdg as Mandat,
d30nm1 as NomImmeuble,
g10ges as Gestionnaire,
d65lib as NomGestionnaire,
d03trs as Locataire,
SoldeAvantTrimestre,
Encaissement,
case when Encaissement > 0
then
case when SoldeAvantTrimestre >= 0
then 0
else
case when Encaissement + SoldeAvantTrimestre <= 0 then Encaissement else SoldeAvantTrimestre * -1 end
end
else 0
end as EncaissementPourCompenserDebit,
SoldeADateArrete,
Quittancement,
case when Encaissement = 0
then 0
else
case when Quittancement = 0
then 1
else
case when abs ( ( 1230.456789 + Encaissement - 1230.456789 ) / Quittancement ) > 1
then abs ( ( 1230.456789 + Encaissement - 1230.456789 ) / Quittancement )
else abs ( ( 1230.456789 + Encaissement - 1230.456789 ) / Quittancement )
end
end
end as TauxEncaissementInstantane,
case when SoldeAvantTrimestre + Quittancement = 0
then 1
else
case when abs ( ( 1230.456789 + Encaissement - 1230.456789 ) / ( SoldeAvantTrimestre + Quittancement ) ) > 1
then abs ( ( 1230.456789 + Encaissement - 1230.456789 ) / ( SoldeAvantTrimestre + Quittancement ) )
else abs ( ( 1230.456789 + Encaissement - 1230.456789 ) / ( SoldeAvantTrimestre + Quittancement ) )
end
end as TauxEncaissementCumule,
substring ( cast ( DebutPeriode as char ( 8 ) ) , 7 , 2 ) || '/' ||
substring ( cast ( DebutPeriode as char ( 8 ) ) , 5 , 2 ) || '/' ||
substring ( cast ( DebutPeriode as char ( 8 ) ) , 1 , 4 )
as DebutPeriode,
substring ( cast ( DateArrete as char ( 8 ) ) , 7 , 2 ) || '/' || substring ( cast ( DateArrete as char ( 8 ) ) , 5 , 2 ) || '/' || substring ( cast ( DateArrete as char ( 8 ) ) , 1 , 4 ) as DateArrete,
substring ( cast ( 100 + day ( current date ) as char ( 3 ) ) , 2 , 2 ) || '/' ||
substring ( cast ( 100 + month ( current date ) as char ( 3 ) ) , 2 , 2 ) || '/' ||
cast ( year ( current date ) as char ( 4 ) )
as DateTraitement
from
(
select
mdg.d01ste, mdg.g10mdg, d30nm1, g10ges, d03trs,
case when SoldeAvantTrimestre is null then 0 else SoldeAvantTrimestre end as SoldeAvantTrimestre,
case when Quittancement is null then 0 else Quittancement end as Quittancement,
case when Encaissement is null then 0 else Encaissement end as Encaissement,
case when SoldeADateArrete is null then 0 else SoldeADateArrete end as SoldeADateArrete
from
(
select d01ste, g10mdg, d30nm1, g10ges
from fbase1.g10mdg0
inner join simco.bx_FGironDatArr DatArr
on g10agd * 10000 + g10mgd * 100 + g10jgd <= DateArrete
and ( g10agf = 0 or g10agf * 10000 + g10mgf * 100 + g10jgf >= DateArrete )
) mdg
left outer join
(
select d01ste, g10mdg, d03trs,
sum ( case when c04ade * 10000 + c04mde * 100 + c04jde < DebutPeriode then g30mon else 0 end ) * -1 as SoldeAvantTrimestre,
sum (
case when

(
( select count ( * ) from simco.bx_ro where departement = 'VB' ) = 0
and c04ade * 10000 + c04mde * 100 + c04jde >= DebutPeriode
)
or

(
( select count ( * ) from simco.bx_ro where departement = 'VB' ) > 0
and c04ade * 10000 + c04mde * 100 + c04jde between DebutPeriode and FinPeriode
)
then
case when g30mon > 0 then g30mon else 0 end
else 0
end
) * -1 as Quittancement,
sum (
case when c04ade * 10000 + c04mde * 100 + c04jde >= DebutPeriode
then
case when g30mon > 0 then 0 else g30mon end
else 0
end
) * -1 as Encaissement,
sum ( g30mon ) * -1 as SoldeADateArrete
from agirab1.g30hlo0
inner join simco.bx_FGironDatArr DatArr
on c04ade * 10000 + c04mde * 100 + c04jde <= DateArrete
group by d01ste, g10mdg, d03trs
-- having sum ( g30mon ) <> 0
) hlo
on mdg.d01ste = hlo.d01ste
and mdg.g10mdg = hlo.g10mdg
) bai
inner join simco.bx_FGironDatArr DatArr
on DateArrete > 0
left outer join
(
select d65rub, d65lib from fbase1.d65ftc0 where upper ( d64cod ) = 'GES'
) ftc
on g10ges = d65rub
left outer join agirab1.d01ste0 ste
on bai.d01ste = ste.d01ste
left outer join (
select d01ste, regionoperationnelle from agirab1.d01ste0
inner join simco.bx_ro
on upper ( activite ) = 'GER'
and upper ( departement ) = '1'
and d01ste = societe


union all

select d01ste, RegionOperationnelle from agirab1.d01ste0
inner join simco.bx_ro
on upper ( activite ) = 'GER'
and upper ( departement ) = '1'
where d01ste not in ( select d01ste from agirab1.d01ste0 inner join simco.bx_ro on upper ( departement ) = '1' and d01ste = societe )
and societe = ''
) ro
on bai.d01ste = ro.d01ste
order by bai.d01ste, g10mdg, d03trs
;
-- FICHIER SYNTHESE


delete from SIMCO.BX_GERAPRO ;
insert into SIMCO.BX_GERAPRO
select
NomDepartement,
sum ( SoldeAvantTrimestre ) as SoldeAvantTrimestre,
sum ( Encaissement ) as Encaissement,
case when sum ( Encaissement ) > 0 then
case when sum ( SoldeAvantTrimestre ) >= 0 then 0 else
case when sum ( Encaissement + SoldeAvantTrimestre ) <= 0 then sum ( Encaissement ) else sum ( SoldeAvantTrimestre ) * -1 end end
else 0 end as EncaissementPourCompenserDebit,
sum ( SoldeADateArrete ) as SoldeADateArrete,
sum ( Quittancement ) as Quittancement,
case when sum ( Encaissement ) = 0
then 0
else
case when sum ( Quittancement ) = 0
then 1
else
case when abs ( ( 1230.456789 + sum ( Encaissement ) - 1230.456789 ) / sum ( Quittancement ) ) > 1
then abs ( ( 1230.456789 + sum ( Encaissement ) - 1230.456789 ) / sum ( Quittancement ) ) -- 1
else abs ( ( 1230.456789 + sum ( Encaissement ) - 1230.456789 ) / sum ( Quittancement ) )
end
end
end as TauxEncaissementInstantane,

case when sum ( SoldeAvantTrimestre + Quittancement ) = 0
then 1
else
case when abs ( ( 1230.456789 + sum ( Encaissement ) - 1230.456789 ) / sum ( SoldeAvantTrimestre + Quittancement ) ) > 1
then abs ( ( 1230.456789 + sum ( Encaissement ) - 1230.456789 ) / sum ( SoldeAvantTrimestre + Quittancement ) )
else abs ( ( 1230.456789 + sum ( Encaissement ) - 1230.456789 ) / sum ( SoldeAvantTrimestre + Quittancement ) )
end
end as TauxEncaissementCumule,

DebutPeriode,
DateArrete

from simco.BX_GERAppe

where
not (
( departement = '5' and societe in ( '50' ) )
or ( departement = 'R' and societe in ( '01' ) )
or ( departement = 'VG' and societe in ( '02' , '05' , '06' ) )
)

group by NomDepartement, DebutPeriode, DateArrete

order by NomDepartement;

-- ) with no data
select * from SIMCO.BX_GERAPRO;
sinoun est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/08/2011, 10h41   #5
Membre Expert
 
Avatar de Benoit_Durand
 
Benoit Durand
Consultant en Business Intelligence Freelance
Inscription : mars 2005
Messages : 812
Détails du profil
Informations personnelles :
Nom : Benoit Durand
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Consultant en Business Intelligence Freelance

Informations forums :
Inscription : mars 2005
Messages : 812
Points : 1 084
Points : 1 084
il faut commencer par enlever les commentaires en "--" il n'est pas trop fan de ça.

Ensuite en collant les requêtes dans un tSGBDInput est-ce que ça fonctionne ?
__________________
Pensez à la fonction Recherche
Benoit_Durand est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/08/2011, 14h39   #6
Futur Membre du Club
 
Inscription : juillet 2011
Messages : 99
Détails du profil
Informations forums :
Inscription : juillet 2011
Messages : 99
Points : 18
Points : 18
Ok, je vais enlever les commentaires,
et pour le tsgbdinput, j'ai l'impression qu'un tdbinput exécute qu'une seule requete de type select from table, si le tdbinput execute tout mon sql je serais heureux.
sinoun est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h58.


 
 
 
 
Partenaires

Hébergement Web