2017-06-14 2 views
0

J'utilise maintenant Spoon de PDI-CE 7.0 sous Windows 10 pour éditer des transformations.Comment entrer une valeur multiligne dans Pentaho Spoon UI?

Je ne trouve un moyen pratique de « coller du presse-papier » une multiligne valeur de chaîne en étapes simples comme « Data Grid » ou « Générer des lignes » ..

Y at-il un truc que je suis absent?

Les options suivantes fonctionnent mais ne sont pas que pratique:

  • Modification du fichier KTR manuellement (!!)
  • En utilisant une étape de script (UDJC, UDJE, JS, ..) pour générer la chaîne valeur
  • Chargement de la chaîne multiligne à partir d'un fichier en utilisant loadFileContent() dans une étape JS
+0

Data Grid a une cellule de table pour les valeurs et ce n'est pas un bon choix en tant qu'éditeur de texte. Ne vaut pas d'entrer une chaîne multiligne là-bas. JS est assez bon. Modification du fichier ktr, que se passe-t-il s'il y a des balises dans la chaîne collée? – simar

+0

Dans les étapes JS, nous sommes censés coder/coller du code JS .. qui pourrait en effet générer une valeur String multiligne mais ce n'est pas pratique. LoadScriptFromTab (tabName) mais malheureusement il ne retourne pas la chaîne depuis l'onglet référencé (il suffit de charger les fonctions apparemment). Impossible d'utiliser des devers back comme dans Ecma6 pour envelopper un texte multiligne collé. ... A propos de l'édition du ktr, je voulais surtout souligner que seule l'interface utilisateur ne supporte pas la pâte multiligne (car ktr et le traitement fonctionnent bien). – Myobis

Répondre

1

pâte de copie réelle fonctionne, si un widget de table ne les sauts de ligne de soutien, mais il n'est pas visible dans la cellule. Il semble que dessiner des lignes multiples dans une cellule de tableau n'est pas trivial (base sur des exemples swt). Dans le fichier de KTR, bouilloire prévoyante remplacer les sauts de ligne avec l'entité xml

Donc, si vous entrez quelque chose comme

hello\r\n 
world\r\n 
\r\n 

alors vous obtiendrez dans le fichier KTR:

hello
world
 

" ", est la entité pour casser comme. Si vous entrez une telle chaîne dans https://mothereff.in/html-entities, vous obtiendrez une rupture de ligne. Donc, si vous voulez éditer le fichier ktr et entrer une chaîne longue, utilisez au moins ce service pour effectuer une opération en arrière-plan afin d'obtenir une version de chaîne échappée pour des raisons de sécurité. Mais il semble beaucoup plus facile d'utiliser simplement copier coller à l'entrée de la chaîne.

+0

Merci d'avoir répondu mais ça ne marche apparemment pas de mon coté (sur Win10): je copie un texte multiligne dans le presse-papier puis le colle dans la cellule cible d'une Data Grid, seule la 1ère ligne reste (et aussi dans le ktr) . S'il s'agit d'un résultat multiligne (dans un tableau de prévisualisation par exemple), il est alors possible de le copier correctement dans le presse-papier. – Myobis

+1

Je pense qu'il pourrait avoir des pièges dépend de la version de Kettle (version swt) ainsi que la fin de la ligne est utilisée unix ou Windows Way – simar

+0

En effet, cela fonctionne bien avec les EOL de style linux. Donc, une conversion de la chaîne multiligne peut être nécessaire, mais cela semble acceptable pour la plupart de mes utilisations! – Myobis