SSAS Calcul des totaux "actifs" ou "sous garantie" entre les dates de début et de fin

Je suis très novice en matière de concepts SSAS et d'entrepôt de données (mais je connais bien SQL), alors faites-moi confiance.

J'essaie en fin de count de déterminer un taux d'échec pour les pièces en fonction des CLAIMS / PARTS qui sont sous garantie par mois et par année.

J'ai créé l'entrepôt et je peux calculer le nombre de réclamations par godet sans problème. Le calcul qui me pose problème consiste à déterminer le nombre de pièces sous garantie en fonction des dates de début et de fin de la garantie.

Ma table de faits contient les colonnes suivantes:

 [unit_details_id],[unit_id],[part_id],[claim_id] ,[warr_start_date_id],[warr_end_date_id] ,[manuf_date_id],[claim_date_id] 

Pour get le nombre de revendications, j'ai créé une mesure pour toutes les valeurs claim_id non nulles. J'ai maintenant besoin de créer une mesure pour toutes les pièces qui sont in warranty pendant les périodes de réclamation que j'utilise (mois et année).

Ainsi, par exemple, en juillet 2014, la partie X pourrait avoir 10 revendications.

  • Je dois find combien de parties X ont un warr_start_date <= 7/2014 et warr_end_date >= 7/2014 .
  • J'ai ensuite besoin de split le total des requests par total in warranty pour 7/2014 pour get le pourcentage.

Comment puis-je accomplir cela?

Je "pré-gérer" cette exigence dans le sql. Demandez à votre groupe de mesures d'extraire ses données d'une vue ou d'append une colonne calculée dans le SSAS DataSourceView qui inclut quelque chose comme "IsInWarranty" à 1 ou à 0, et de les additionner dans le cube. Je suppose que vous allez traiter votre cube tous les jours, donc la valeur changera à mesure que la date actuelle passera la date end_warranty.