2010-11-03 22 views
1

J'ai développé une application CakePHP qui fait du CRUD basique sur une série de tables que j'ai créées. L'application CakePHP semble fonctionner très, très bien et je voudrais vraiment l'utiliser plus à long terme. Cela dit, mes besoins impliquent l'utilisation de SQL Server Reporting Services pour exécuter des rapports sur les données. Microsoft a publié un SDK PHP pour se connecter à SSRS et afficher des rapports.Appeler des rapports SSRS à partir de CakePHP

Je ne suis pas sûr de la façon de mettre en place la structure MVC pour accomplir ce que je veux.

Je peux envisager de configurer une table qui contient la liste des rapports et une autre table qui contient une liste de paramètres requis/optionnels et de générer une vue/contrôleur pour ce modèle qui présenterait à l'utilisateur une liste de rapports pourrait s'exécuter, puis créer une vue pour reportexecute (ou quelque chose) qui prendrait l'entrée de l'utilisateur puis appelait SSRS en utilisant le SDK que j'ai référencé ci-dessus.

Est-ce une manière courante de résoudre ce problème? Y a-t-il un meilleur moyen de me manquer? Je ne veux pas muck up ma belle application MVC en hacking mon chemin à travers cette partie!

Merci d'avance!

Répondre

1

Vous pouvez simplement utiliser les services Web SSRS qui fournissent toutes les méta-informations de rapport en tant que réponse XML SOAP normale. En utilisant le XML, vous pouvez ensuite faire ce que vous voulez sans aucune contrainte.

Here's an example de consommer le service Web dans une application ASP .Net que vous devriez pouvoir facilement adapter à vos exigences PHP.

0

Je ne fais pas de MS, mais en ce qui concerne le SDK, vous pouvez l'inclure via le mécanisme Vendors, en utilisant App :: import pour inclure les fichiers nécessaires. Mais je suis sûr que tu le sais déjà.

Me? Si je pensais qu'il était nécessaire de stocker des rapports et des options pour une utilisation ultérieure, j'utiliserais probablement des tables DB. Mon penchant serait d'utiliser des conventions CakePHP pour le nom de la table et les noms de colonnes. De cette façon, vous pouvez facilement y accéder pour d'autres applications Cake-build (non-MS) et aussi écrire l'interface graphique plus facilement dans Cake.