Ma table de fait consiste en des plaintes avec des dimensions typiques de l'OMS, de quoi et quand. Nous avons une cible que la plainte doit être répondu à une certaine période.
Je ne suis pas sûr de savoir comment il est préférable de modéliser si la plainte avait une réponse dans ce délai.
Je peux stocker à la fois la valeur cible et le résultat dans la table des faits en tant qu'étailleur avec le résultat en tant que mesure. Ou je pourrais utiliser une dimension qui a des valeurs de oui/non au lieu de représenter cela comme une mesure, je pourrais alors utiliser une mesure calculée dans mon cube. Ou je pourrais utiliser une combinaison des deux.
Existe-t-il des avantages, des inconvénients et des gotchas modélisant les faits dans la manière décrite ci-dessus?
Je prévois que cette table de fait sera utilisée pour obtenir le nombre total de plaintes, le nombre de plaintes a répondu à temps, le pourcentage a répondu à temps et identifiera également les plaintes individuelles qui n'ont pas été répondues à temps.
Voici un moyen flexible de la stocker qui devrait soutenir les modifications des exigences à l'avenir.
registration_date - closing_date
.Pour le résultat, je ne le stockerais pas comme un drapeau (oui/non) mais comme un numéro. Si vous appelez la colonne on_time
et mettre un 1 pour chaque plainte qui répond à la cible, vous pouvez facilement résumer sur cette colonne pour avoir le total des plaintes sur une période sur une période.
Je vois trois façons d'obtenir le résultat:
fact_complaint.elapsed_time
est inférieur ou égal à dim_complaint_type.target
ou pas. Cela pourrait être dangereux si différentes personnes utilisent différentes formules. Si vous avez un outil avec une couche de métadonnées (E.G. obiee, SAP BO, ...), vous pouvez définir cette mesure de résultat une fois pour tous.