Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bonjour,
Je me permet de vous solliciter une nouvelle fois...sans doute par incompétence ????. Ma question fait suite à la réponse à une question précédente concernant l'exclusion de champs au chargement
Il s'agirait cette fois de paramétrer la date de début et la date de fin en fonction du nom du fichier. En effet le nom de fichier contient le n° de mois étudié donc je pensais pouvoir le récupérer pour paramétrer la Date_jour_deb et Date_jour_fin comme présenter ci-dessous. Mais ce que j'ai écrit ne fonctionne pas !! Sauriez vous me dire où est mon erreur ?
Encore merci
let MoisFichier = Left(Subfield(Filebasename(),'_',4),2);
let VAR01='01/' & (MoisFichier) & '/2016';
let VAR02='31/' & (MoisFichier) & '/2016';
let Date_jour_deb = date#(VAR01,'DD/MM/YYYY');
let Date_jour_fin = date#(VAR02,'DD/MM/YYYY');
set Errormode=0;
For Date_jour= '$(Date_jour_deb)' to '$(Date_jour_fin)'
let Jour= left(date('$(Date_jour)'),5);
[Feuil1]:
LOAD
[Mesure],
[Départ.],
[Code],
[Forme],
[Capit],
[$(Jour)] as AUTRESEM,
'$(Jour)' as Jour
FROM [lib://Desktop/Reprise_Qlik_121_06.xlsx]
(ooxml, embedded labels, table is Feuil1);
Next
Je pense que qu'on peut trouver une manière de récupérer le Mois de ton fichier.
FICHIER:
LOAD distinct
FileBaseName() as Nom_Fichier
FROM [lib://b/Reprise_Qlik_121_06.xlsx]
(ooxml, embedded labels, table is Feuil1);
let MoisFichier = Left(Subfield(Peek('Nom_Fichier', 0,'FICHIER'),'_',4),2);
DROP Table FICHIER;
let VAR01='01/' & (MoisFichier) & '/2016';
let VAR02='31/' & (MoisFichier) & '/2016';
let Date_jour_deb = date#(VAR01,'DD/MM/YYYY');
let Date_jour_fin = date#(VAR02,'DD/MM/YYYY');
Bonjour,
Je pense que la fonction file Filebasename() renvoie une chaîne contenant le nom du fichier de tables en cours de lecture, sans chemin ni extension. Alors, cette fonction est logiquement utilisé à l’intérieur d'un LOAD comme l'indique
l'exemple ci dessous:
Load *, filebasename( ) as X from
C:\UserFiles\abc.txt
on aura 'abc' dans le champ X à chaque enregistrement lu.
Vous n'utilisez donc pas filebasename( ) convenablement.
Je pense que qu'on peut trouver une manière de récupérer le Mois de ton fichier.
FICHIER:
LOAD distinct
FileBaseName() as Nom_Fichier
FROM [lib://b/Reprise_Qlik_121_06.xlsx]
(ooxml, embedded labels, table is Feuil1);
let MoisFichier = Left(Subfield(Peek('Nom_Fichier', 0,'FICHIER'),'_',4),2);
DROP Table FICHIER;
let VAR01='01/' & (MoisFichier) & '/2016';
let VAR02='31/' & (MoisFichier) & '/2016';
let Date_jour_deb = date#(VAR01,'DD/MM/YYYY');
let Date_jour_fin = date#(VAR02,'DD/MM/YYYY');
Bonjour,
Merci beaucoup, j'avais essayer avec une table intermédiaire mais je n'avais pas la fonction 'Peek' donc cela ne marchait pas.
Merci Merci, ça marche très bien
Très bonne journée