2013-10-15 6 views
2

Mon KTR est: enter image description hereFusion 2 lignes Pentaho bouilloire transformation

MongoDB Json entrée donne le JSON comme suit:

{ "_id": { "oid $": "525cf3a70fafa305d949ede0"} , "actif": "RO2500AS1", "Rejet du sel": "82%", "Passage au sel": "18%", "Récupération": "56.33%", "Concentration Factor": "2.3", " status ": " critical "," Alarme de débit ":" High Flow "}

et une entrée de table qui retourne 2 lignes:

enter image description here

Dans l'étape StreamLookUp, clé pour rechercher est configuré comme actif = assetname

Ma sortie finale retour 2 jsons:

{"data": [{"Coût estimatif": "USD 15", "AssetName": "RO2500AS1", "Description": "Pompe Maintenance", "Index": 1, "json": " {\ "_ id \": {\ "$ oid \": \ "525cf3a70fafa305d949ede0 \"}, \ "actif \": \ "RO2500AS1 \", \ "Sel Rejet \": \ "82% \", \ "Passage de sel \": \ "18% \", \ "Recovery \": \ "56.33% \", \ "Concentration Factor \": \ "2.3 \", \ "status \": \ "critical \", \ "Alarme de flux \": \ "Élevé Flow \ "}", "Type": "Service", "DeadLine": "13 novembre 2013"}]}

{"data": [{"Estimation du coût": "USD 35", "AssetName ":" RO2500AS1 "," Description ":" Chaleur Capteur "," Index ": 2," json ":" {\ "_ id \": {\ "$ oid \": \ "525cf3a70fafa305d949ede0 \"}, \ "actif \": \ "RO2500AS1 \", \ "Sel Rejet \": \ "82% \", \ "Passage de sel \": \ "18% \", \ "Récupération \": \ " 5 6.33% \ ", \" Concentration Factor \ ": \" 2.3 \ ", \" status \ ": \" critical \ ", \" Alarme de flux \ ": \" Élevé Flow \ "}", "Type" ":" remplacement », "deadline": "26 Novembre 2013"}]}

Je veux que ma sortie finale JSON pour fusionner Afficher le résultat quelque chose comme:

{ "data": [{ "Estimation du coût": "USD 15", "AssetName": "RO2500AS1", "Description": "Maintenance de la pompe", "Index": 1, "Type": "Service", "DeadLine": "13 novembre 2013 "}, {" Coût estimé ":" USD 35 ", " AssetName ":" RO2500AS1 "," Description ":" Capteur de chaleur "," Index ": 2, "Type": "Remplacement", "deadline": "26 Novembre 2013"}],

"JSON": { "_id": "525cf3a70fafa305d949ede0"}, "atout": "RO2500AS1" , « Sel Rejet ":" 82% "," Passage du sel ":" 18% "," Récupération ": " 56.33% "," Concentration Factor ":" 2.3 "," status ":" critique ", " Alarme de débit " : "Haut débit"}

ce qui signifie la fusion de 2 lignes.

aide Quelqu'un peut-il s'il vous plaît

Répondre

3

vous pouvez utiliser MergeJoin après Tableinput. Cela va fusionner les lignes des lignes de sortie Mysql et vous n'aurez qu'un seul JSON en sortie ...

+0

MergeRow/Mergejoin. utiliser selon vos besoins ... – user2093576

+0

Solution simple .. merci .. cela a fonctionné parfaitement bien ... – user2572739

1

Vous souhaitez utiliser l'étape Merge pour votre usage. Ne pas oublier de trier les flux d'entrée.

Remarque: Dans cette étape, les lignes doivent être triées dans les champs clés spécifiés. Lorsque vous utilisez l'étape Trier, cela fonctionne correctement. Lorsque vous avez trié les données en dehors de PDI, vous pouvez rencontrer des problèmes avec le drapeau interne sensible à la casse/insensible à la casse

Questions connexes