Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Membre habitué
    Afficher une valeur spécifique d'une arrayList enregistrée en globalMap
    Bonjour,

    voila question assez simple il me semble mais je ne trouve pas d'info dessus mais j'ai plusieurs variables enregistrées en globalMap sous ToS, dont 2 arrayList (ColumnNameView:contient le nom des colonnes d'une vue et ColumnNameTable:contient le nom des colonnes d'une table) de String.
    J'aimerai savoir comment je fais avec un tJava pour récupérer, par exemple, la valeur correspondant à l'index 2.
    J'ai essayé:
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    System.out.println(ColumnNameView); --> Renvoie la dernière valeur de la liste,
    System.out.println(ColumnNameView.get(1)); --> The method get(int) is undefined for the type String,
    System.out.println(ColumnNameView.get(1).toString()); --> The method get(int) is undefined for the type String,
    System.out.println(ColumnNameView(1)); --> The method ColumnNameView(int) is undefined for the type Java_INSERT,
    System.out.println(globalMap.get(ColumnNameView)); --> Renvoie : null,
    System.out.println(globalMap.get("ColumnNameView")); --> Renvoie la liste "ColumnNameView" entière


    Le but étant que je puisse itérer dans les deux listes afin de pouvoir rentrer les valeurs de ma vue lorsque les des noms de colonnes sont les mêmes.

    Merci d'avance pour toute aide !

    EDIT :
    Voici un exemple de ce que pourrait contenir globalMap:
    {ColumnNameView=[VAL1, VAL2, VAL3, VAL4, VAL5, VAL6, VAL7, VAL8, VAL9]
    ColumnNameTable=[ID, VAL1, VAL2, VAL3, VAL4, VAL5, VAL6, VAL7, VAL8, VAL9]}

  2. #2
    Membre habitué
    J'ai essayé de récupérer ma liste ColumnNameView présente en globalMap en essayant de l'enregistrer dans un nouvel arrayList comme ceci :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    ArrayList test= new ArrayList<>();
    test.add(globalMap.get("ColumnNameView"));
    System.out.println(test);


    Cependant test ne possède qu'une seul ligne contenant toutes les valeurs.

  3. #3
    Membre habitué
    J'essaye sinon une autre solution qui est d'enregistrer chaque arrayList dans un contexte de type List of Value mais je ne sais pas comment insérer chaque valeur dans context :
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    for (int i = 0; i<j,i++){
    	context.Test = ColumnView.get(i);
    }

    mais j'obtiens l'erreur :
    Message détaillé: Type mismatch: cannot convert from Object to String.

  4. #4
    Membre habitué
    Dans un composant tJava:
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    globalMap.put("columnNameTable", ColumnNameTable); -- Pour ajouter des données globales, ici ColumnNameTableest un arrayList


    Pour récupérer l'arrayList global dans un autre composant de type tJava:

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    ArrayList<String> ColumnTable = new ArrayList<>(); -- Je créé un nouvel arrayList
     
    for (int i = 0; i < = nbIndex; i++)  -- nbIndex correspond au nombre d'index max dans mon arrayList global "columnNameTable"
    	{
    		ColumnTable.add(((ArrayList)globalMap.get("ColumnNameTable")).get(i).toString()); -- Je récupère chaque ligne
    	}

###raw>template_hook.ano_emploi###