Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
bonjour,
j'utilise les instructions inputfield et inputsum pour saisir des nombres dans un tableau Qlikview.
Après débug et une aide prcieuse des participants à ce forum, j'ai réussi mais maintenant sur certaines lignes de mon tableau Qlikview remplce mes valeurs saisies par d'autres valeurs calculées sur plusieurs lignes si je comprends bien.
Exemple si je saisi la valeur 1 il la remplce par 0,31486 car il doit splitter sur plusieurs lignes la valeur 1 ce que je ne veux moi je veux garder la valeur 1.
sur certaines effectivement ça fonctionne mais sur d'autres non, comment m'en sortir ?
voilà les bouts de codes :
INPUTFIELD Atterrissage, Signature;
LOAD
[Nom entreprise],
[CP entreprise],
[Ville entreprise],
[Nbre inscrits maximum],
RowNo() as InputKey
FROM
[$(FicQVD_QlikMartCampAP)]
(qvd);
load
RowNo() as InputKey,
'0' as Atterrissage,
'0' as Signature
AUTOGENERATE peek('InputKey', -1, 'Data');
et dans mon expresion au niveau de mon tableau je fais :
Inputsum(Signature)
j'ai essayé aussi
InputAvg(Signature)
mais c'est pareil
Bonjour Jacky,
En fait, tout dépend de votre méthode de distribution qui est elle-même définie par le second paramètres des fonctions input... N'hésitez pas à consulter l'aide pour avoir plus d'informations sur ce point.
Par défaut, vous êtes sur une répartition en part égales (signe "+"), mais dans votre cas, une répartition par recopie de votre valeur est peut être plus adaptée (signe "=")
Sachez, en plus de tout cela, que vous pouvez réinitialiser vos valeurs avec un clic droit sur la colonne qui contient les valeurs input.
J'espère que cela vous aidera.
Martin Favier
merci pour la réponse mais si je comprends bien Qlikview fait systématiquement une répartition sur plusieurs lignes de la valeur saisie et c'est ça que je ne veux pas.
moi je veux saisir une valeur sur ligne et cette valeur doit rester sur cette ligne comme sur Excel et ne pas se répartir, existe-til une solution ?
Tout dépend des dimensions de votre tableau.
Si une ligne de votre tableau correspond à plusieurs lignes de données (dans votre table du modèle de données), alors vous reporterez cette valeur sur l'ensemble de ces lignes.
Il faut donc que les dimensions de votre tableau constitue la clé unique de votre table de données.
Martin Favier
désolé mais je ne comprends pas tout. J'ai rajouté une dimension "Clef unique" étant la clef unique des mes 4 dimensons de mon tableau, c'est ça ? parce que ça ne change rien.
les lignes à pb sont les ####
Si je reprends votre billet précédent qui parlait de la partie amont de ce sujet : http://community.qlik.com/message/312646#312646
Voici le script utilisé dans votre application :
INPUTFIELD Atterrissage, Signature;
LOAD Année,
Mois,
Semaine,
[sp Nom entreprise],
[Objectifs à recruter],
[Nbre inscrits maximum],
RowNo() as InputKey
FROM
[$(FicQVD_QlikMartCampAP)]
(qvd);
load
RowNo() as InputKey,
'0' as Atterrissage,
'0' as Signature
AUTOGENERATE peek('InputKey', -1, 'Data');
Donc si vous voulez pouvoir modifier une et une seule valeur de saisie, le champ InputKey doit faire partie des dimensions de votre tableau.
Martin Favier
que voulez-vous dire par là ?
il faut que je modifie mon code dans le LOAD ? si oui que faut-il mettre ?
il faut rajouter une dimension dans mon tableau avec le champ "Signature" ? et dans ce cas où je mets le
InputSum(Signature)
j'ai peut-être compris, c'est carrément le champ Inputkey que je met dans les dimension et comme j'en ai pas besoin je masque la colonne, c'est bien ça ?
Dans le tableau que vous affichez dans votre capture d'écran, vous devez mettre la dimension InputKey.
Martin Favier
même en faisant comme ça je n'obtient pas le résultat escompté car il réparti la valeurs saisie sur le niveau le plus bas donc en fonction de mes sélections la colonne Saisie signature bouge alors que moi je voudrais saisir une valeur par rapport à ma dimension "Nom Année" voir ma copie d'écran. dans ce cas il faut imaginer la colonne Inputkey qui disparait voir copie écran plus haut.
je ne sais si c'est vraiment faisable ?