Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Renvoie le nombre de jours ouvrables (du lundi au samedi)

bonjour

     je dois effectuer des calculs de jours ouvrés (du lundi au samedi) , j'ai utiliser la méthode =networkdays (MonthStart(today()),Today())

elle me donne un bon résultat (du lundi au dimanche) par contre je suis a la recherche du nombre de jour ouvrable du mois (du lundi au samedi)

merci d'avance

1 Solution

Accepted Solutions
sfatoux72
Partner - Specialist
Partner - Specialist

ok, plusieurs petites erreurs:

  • Le nom de la variable ne correspond pas à votre appel
    • Vous avez appeler la variable fMyNetworkDays
    • Et dans l'objet texte vous avez mis :  =$(fMyNetworksdays('01.02.2017', '28.01.2017'))
    • ==> Les nom doivent correspondre, j'ai dans l'objet text
  • Dans la variable, l'expression ne doit pas commencer par un "="
    • ==> Supprimer le =
  • Utilise ton format de date par défaut DD/MM/YYY
    • Tu as mis mon format de date (DD.MM.YYYY) dans le script, mais tu ne l'as pas exécuté. Il n'est donc pas pris en compte.
    • ==> Utilise ton format de date par défaut DD/MM/YYY
  • Il faut mettre la plus petite date comme premier paramètre et ensuite l'autre.
    • ==> Inverser les 2 dates          =$(fMyNetworkDays('01/02/2017', '28/01/2017'))

L'application corrigée en pièce jointe

View solution in original post

11 Replies
brunobertels
Master
Master

Bonjour

Normalement cette fonction calcule les jours ouvrés du lundi au vendredi moins fériés et dates spécifiées. Soit 19 en février. Tu as un autre résultat?

Not applicable
Author

bonjour

oui effectivement vous avez raison mais je cherche la commande qui m'affiche le nombre du jour ouvrés du lundi au samedi non pas au vendredi

Cordialement

sfatoux72
Partner - Specialist
Partner - Specialist

Cette fonction n'existe pas, mais tu peux créer une variable paramétrée qui va faire le job.

Crée une variable fMyNetworkDays :

$2-$1+1 - if(weekday($1) >=(7-Mod($2-$1+1, 7)), floor(($2-$1+1)/7+1), floor(($2-$1+1)/7))

Tu pourras alors l'utiliser comme ceci :  $(fMyNetworksdays(début, fin))

début et fin sont des champs de type date qui sont passé en paramètre

Cette fonction ne tient pas compte des jours fériés, dois-tu en tenir compte?

sfatoux72
Partner - Specialist
Partner - Specialist

Bonjour Slim,

alors, ç'est ce que vous vouliez?

Not applicable
Author

bonjour

     j'ai crée le variable avec la valeur que vous avez indique dans votre réponse , ensuite j'ai essayer d'appeler le variable mais j toujours une erreur  , est ce que je doit ecrire les date debut et fin entre '' exp:

$(fMyNetworksdays('début', 'fin'))

sfatoux72
Partner - Specialist
Partner - Specialist

Non,

Mais il faut que début et fin soit reconnue comme des dates par QlikView:

Chez moi, le format de date est DD.MM.YYYY:

Voici un exemple:

SET DateFormat='DD.MM.YYYY';

LOAD * INLINE [
mois, début, fin
201701, 01.01.2017, 31.01.2017
201702, 01.02.2017, 28.02.2017
201703, 01.03.2017, 31.03.2017
201704, 01.04.2017, 30.04.2017
201705, 01.05.2017, 31.05.2017
201706, 01.06.2017, 30.06.2017
201707, 01.07.2017, 31.07.2017
201708, 01.08.2017, 31.08.2017
201709, 01.09.2017, 30.09.2017
201710, 01.10.2017, 31.10.2017
201711, 01.11.2017, 30.11.2017
201712, 01.12.2017, 31.12.2017
]
;

Tu peux alors créer un Tableau Simple avec comme dimensions:

  • mois, début, fin

Et comme expression :

  • $(fMyNetworksdays(début, fin)) 

Ou créer un objet texte avec l'expression suivante:    $(fMyNetworksdays('01.01.2017', '31.01.2017')) 

Sinon, essaye de me transmettre une application avec ton essai et je regarderai ce qui ne va pas (il faut utiliser l'éditeur avancé pour joindre une application)

Not applicable
Author

bonjour

     j'ai crée un exemple mais j'arrive pas a utiliser l’éditeur avancé pas je suis nouveau sur le forum (merci bcp pour tn aide).

     je t'explique : j'ai crée la la variable avec la valeur que vous m'avez donné , lors de l'utilisation de la variable il affiche rien comme résultat

image.jpg

sfatoux72
Partner - Specialist
Partner - Specialist

Tu as mis un "=" devant l'expression dans la variable, il ne faut pas.

Pour attacher une appli ou un autre document :

Community_1226137.png

Et après :

Community_1226137_2.png

Not applicable
Author

bonjour

     en fin j'arrive a utiliser l’éditeur avancé , j'ai crée la variable et je veux l'affiché dans un objet texte veuillez jeté un coup d’œil sur mon cub