Rapports Crystal pour une erreur de Visual Studio 2010

j'essaie d'exécuter un rapport crystal de mon application web qui a été construite en utilisant ASP.NET 4.0 et Visual Studio 2010. J'ai installé ce qui suit depuis le site SAP (http://www.businessobjects.com/jump/xi/crvs2010/us2_default.asp)

1) SAP Crystal Reports, version pour Visual Studio 2010-paquet D'installation Standard EXE qui installe le logiciel dans L'IDE de Visual Studio.

2) SAP Crystal rapports moteur d'exécution pour .net Framework 4 (64 bits)

j'ai une page appelée Rapports.aspx en qui j'ai un visualiseur de rapports crystal contrôle

 <CR:CrystalReportViewer ID="rptViewer" runat="server" AutoDataBind="true" />

Dans les Rapports.aspx.fichier cs j'ai le code suivant:

protected override void OnPreRender(EventArgs e)
{
    ReportDocument report = new ReportDocument();
    var path = Server.MapPath("Reports/Sample.rpt");
    report.Load(path);
    report.SetDatabaseLogon("username", "password", "servername", "databasename");
    rptViewer.ReportSource = report;
}

Sur le rapport.Charge(chemin des) ligne j'obtiens l'erreur suivante:

Opération Non Supportée. Un document traité par le moteur du CCR ne peut pas être ouvert dans la pile C++.

Comment puis-je résoudre ce problème?

17
demandé sur Kumar 2010-11-28 03:55:44

9 réponses

assurez-vous que le rapport est app_code dossier initialiser une nouvelle instance de celui-ci au lieu d'initialiser un reportdocument et y charger le rapport.

Sample report = new Sample();

cela a fonctionné pour moi

10
répondu Ali Tarhini 2010-11-28 14:39:56

j'ai aussi eu le même problème mon problème était le chemin du rapport n'était pas valide, peut-être que vous avez le même problème , vérifiez le serveur.MapPath ("Rapports / Échantillon.rpt") retour du chemin valide ?

13
répondu Priyan R 2010-12-07 08:49:16

Vous devez modifier deux propriétés dans la .rpt fichiers:

  1. Action De Construire est défini à" ressource intégrée " par défaut. Changer pour "Contenu".
  2. Copie à la Sortie est réglé sur "Ne pas copier" par défaut. Changer pour "copier toujours".

reconstruire, construire le paquet de déploiement et publier. Fait!

6
répondu aleafonso 2012-05-15 09:05:13

NOTE: ci-dessous, le terme "Site Web" se réfère à des noeuds de site web réels dans IIS, pas un répertoire virtuel dans un site web.

cause racine du problème: il n'y a pas de dossier" aspnet_client " accessible par l'application.

Cela peut se produire pour plusieurs raisons:

  1. puisque L'installateur SAP CR semble installer le dossier aspnet_client dans le ...\inetpub\wwwroot\ folder, si le chemin physique de votre Site web ne l'est pas ...\inetpub\wwwroot, votre l'application n'aura pas accès au dossier aspnet_client.
  2. si le dossier aspnet_client a été déplacé ou supprimé du niveau supérieur du chemin physique de votre site Web, votre application IIS n'aura pas accès au dossier.

La Solution Du Problème (Pour Windows Server 2008 R2)

  1. allez au gestionnaire IIS sur votre serveur
  2. étendre le noeud de vue d'arbre pour le site Web exécutant votre application
  3. regardez le niveau immédiatement sous le noeud du site web et assurez-vous de voir un dossier "aspnet_client".
  4. Si vous voyez le dossier, puis peut-être que cette cause n'est pas la cause de votre problème.
  5. si vous ne voyez pas le dossier, cherchez-le sur le disque dur du serveur et copiez-le sur le chemin physique du Site web.
  6. bouton droit de la souris cliquez sur le noeud du Site web et cliquez rafraîchir à partir du Menu contextuel
  7. Vous devriez maintenant voir la aspnet_client dossier au niveau directement sous votre nœud site web et les rapports dans l'application devrait fonctionner.
5
répondu George 2011-09-12 17:53:27

j'ai rencontré ça quand j'ai converti un site web en une application web. Le rapport fonctionnerait bien sur ma machine dev, mais pas sur le serveur. Puis j'ai réalisé que le fichier rpt était manquant sur le serveur!

par défaut, les fichiers de rapport étaient considérés comme des ressources intégrées et n'étaient pas copiés lorsque l'application web a été publiée. Je viens de les changer individuellement, republié le site, et tout allait bien à nouveau.

3
répondu Ken Pespisa 2011-03-02 17:20:13

j'ai également eu une panne de charge de rapport si j'ai laissé par erreur le fichier de rapport ouvert dans crystal reports designer.

2
répondu Jon 2011-07-01 20:32:00

cette erreur est un réel plaisir, et semble avoir beaucoup d'antécédents possibles. Heureusement, je n'ai perdu qu'une journée sur ma variation particulière:

ReportDocument.Load() fait aussi une copie temporaire locale. (Ce ne peut être dans le cas d'une charge à partir d'un lecteur réseau, je n'ai pas fait de test dans le cas d'une charge locale.)

si le contexte utilisateur dans lequel la charge se produit n'a pas l'autorité de créer le fichier temp localement, Load échouera avec le même très peu serviable erreur.


aussi, j'ai fini par diagnostiquer ceci avec Moniteur De Processus. Il peut être utile pour vous.

2
répondu Marc L. 2012-03-23 21:50:12

veuillez vous assurer que les fichiers rpt de votre rapport sont dans leur dossier d'origine. J'ai eu la même erreur en premier, après que j'ai "publié" mon site Web MVC à IIS. Je ne savais pas que "publier" ne mettait pas les fichiers rpt dans le paquet.

0
répondu user477864 2011-05-19 02:52:22
  1. Re-installer le "rapport Crystal engine" pour le serveur

  2. Construire l'ensemble des mesures de "Contenu".

Il a parfaitement fonctionné pour moi..!

0
répondu ErandaK 2013-02-15 10:32:09