Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > Business Objects > Webi
Webi Forum d'entraide Webi (client léger)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/12/2011, 16h12   #1
Candidat au titre de Membre du Club
 
Homme
Consultant en Business Intelligence
Inscription : mars 2011
Messages : 26
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Consultant en Business Intelligence
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : mars 2011
Messages : 26
Points : 11
Points : 11
Par défaut Calcul Temps de Travail -> accrochez-vous :)

Salut à tous,

Un petit post car cela fait deux jours que je planche sur un problème et je suis bloqué.

Avant tout sachez que je simplifie les champs et les data pour ne pas noyer le poissons.

le sujet : un artisan fabrique des pièces de bois avec un employé. Quand ils travaille sur une pièce, il note la date de début des travaux est la date de fin.

Alors : je possède 3 objets :
- objet 1 : PIECE
- objet 2 : DATE DE DEBUT
- objet 3 : DATE DE FIN

Affiché dans un tableau cela donne :

Code :
1
2
3
4
5
6
7
PIECE  | DATE DE DEBUT | DATE DE FIN
chaise | 01.01         | 03.01
chaise | 02.01         | 06.01
chaise | 02.01         | 03.01
chaise | 08.01         | 11.01
armoire| 15.01         | 17.01
armoire| 20.01         | 25.01
Je souhaite connaitre le temps passé sur chacune des pièces :

Affiché dans un tableau cela donne :
Code :
1
2
3
PIECE  | DUREE DE TRAVAIL
chaise | 10
armoire| 9
Ma question : comment je fait pour obtenir le résultat ci-dessus ? Je vous avoue que je bloque.

J'ai pourtant fait l'algo mais il ne sert à rien car dans webi on ne peut pas créer de variable dynamique.

Merci par avance de votre attention.
Amarox est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2011, 16h26   #2
Membre chevronné
 
Avatar de NorocBzh
 
Homme
Développeur décisionnel
Inscription : juin 2008
Messages : 510
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 26
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Développeur décisionnel
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 510
Points : 694
Points : 694
Salut,

Tu peux créer une variable qui calcul le nombre de jours de travail sur ton premier tableau.
Ensuite, tu fais un nouveau tableau en mettant ta pièce et cette variable.
NorocBzh est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2011, 16h29   #3
Candidat au titre de Membre du Club
 
Homme
Consultant en Business Intelligence
Inscription : mars 2011
Messages : 26
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Consultant en Business Intelligence
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : mars 2011
Messages : 26
Points : 11
Points : 11
Ok, mais comment tu calcule le nombre de jour de travail ?
Amarox est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2011, 17h05   #4
Responsable Business Intelligence
 
Avatar de TomDuBouchon
 
Homme Thomas Cochin
Consultant en Business Intelligence
Inscription : juin 2009
Messages : 3 281
Détails du profil
Informations personnelles :
Nom : Homme Thomas Cochin
Âge : 29
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : Consultant en Business Intelligence
Secteur : Conseil

Informations forums :
Inscription : juin 2009
Messages : 3 281
Points : 5 701
Points : 5 701
Bonjour,

Citation:
J'ai pourtant fait l'algo mais il ne sert à rien car dans webi on ne peut pas créer de variable dynamique
Vous me faites peur, là

En fait, il faut créer une variable sur votre rapport avec la formule suivante : (nommons la [DUREE DE TRAVAIL])
Code :
=JoursEntre([DATE DE DEBUT];[DATE DE FIN])
Ensuite, vous créez un nouveau tableau avec [PIECE] et la formule suivante :
Code :
=Somme([DUREE DE TRAVAIL])
Normalement, ça devrait fonctionner. (Sauf si d'autres objets que vous avez ôtés viennent perturber le calcul)
__________________
Pensez à consulter les FAQs BI, les Tutoriels BI et à effectuer des Recherches.
Un message vous a aidé ? Votez en cliquant sur
Votre problème est résolu ? Merci de l'indiquer en cliquant sur le bouton
Vous souhaitez contribuer à la rubrique BI ? Contactez-moi ou un autre responsable de l'équipe BI par MP.
TomDuBouchon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2011, 17h35   #5
Candidat au titre de Membre du Club
 
Homme
Consultant en Business Intelligence
Inscription : mars 2011
Messages : 26
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Consultant en Business Intelligence
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : mars 2011
Messages : 26
Points : 11
Points : 11
Je me suis mal exprimé. Toutes mes excuse. Je recherche le nombre de jour qu'a pris la réalisation d'une pièce.

Votre solution est une somme des JourEntres, seulement, des périodes se chevauches, j'obtiens donc 14 au lieu de 10 pour la chaise.

Code :
1
2
3
PIECE  | DUREE DE TRAVAIL
chaise | 14
armoire| 9
voici ma logique :

On sais que par défaut les lignes du tableau sont classées par nom de pièce puis par date de début. Sans faire référence à un langage de programmation voici mon algo :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
Declare MA_DATE_DE_DEBUT = Min ([DATE DE DEBUT])
Declare MA_DATE_DE_FIN = 0
Declare NbJoursW = 0
 
POUR CHAQUE ("ligne de la pièce CHAISE") {
	IF ( [DATE DE FIN] > MA_DATE_DE_FIN ) {
		IF ( [DATE DE DEBUT] > MA_DATE_DE_FIN ) {	
			NbJoursW = JourEntre ( MA_DATE_DE_DEBUT , MA_DATE_DE_FIN ) + NbJoursW;	
			MA_DATE_DE_DEBUT = [DATE DE DEBUT]
		} 
	MA_DATE_DE_FIN = [DATE DE FIN];
	}
}
La où ça bloque, c'est que dans webi on ne peux pas déclarer de variables tels que NbJoursW.
Amarox est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2011, 08h56   #6
Membre chevronné
 
Avatar de NorocBzh
 
Homme
Développeur décisionnel
Inscription : juin 2008
Messages : 510
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 26
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Développeur décisionnel
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 510
Points : 694
Points : 694
Dans ce cas là, tu peux faire comme ça :

Ton tableau :
Code :
PIECE  |  DUREE DE TRAVAIL
Ta variable Duree de travail :
Code :
=JoursEntre(Min([DATE DE DEBUT]);Max([DATE DE FIN]))
NorocBzh est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2012, 14h40   #7
Candidat au titre de Membre du Club
 
Homme
Consultant en Business Intelligence
Inscription : mars 2011
Messages : 26
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Consultant en Business Intelligence
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : mars 2011
Messages : 26
Points : 11
Points : 11
Toujours pas bon,

Votre solution est le nombre de jours entre le premier jour de travail et le dernier, j'obtiens donc 10 au lieu de 9 pour l'armoire.

Code :
1
2
3
PIECE  | DUREE DE TRAVAIL
chaise | 14
armoire| 9
J'ai mis cette activité en attente et ai développé une solution sur excel en attendant mais le problème n'ai toujours pas résolu.

Mon point de vu est qu'on ne peux pas réaliser ça sous BO.

et vous ?

merci en tout cas
Amarox est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h29.


 
 
 
 
Partenaires

Hébergement Web