J'essaie de supprimer toutes les références à une table d'un rapport Crystal XI. Crystal me dit qu'une colonne de cette table est actuellement utilisée, car il y a un peu de coche verte sur le champ dans la visionneuse de terrain. De plus, si j'essaie de supprimer toute la table, je reçois un avertissement. L'avertissement est presque inutile, car cela ne me dit pas où em> le champ est utilisé. Désormais, lorsque les programmeurs étaient de vrais programmeurs et que les souris étaient chassées des chats, je pouvais simplement grep un répertoire ou un fichier et trouver toutes les références à une variable qui m'intéressait. Mais comment puis-je faire cela dans Crystal? J'ai déjà essayé d'exporter le rapport dans une définition de rapport, ce qui a contribué à trouver des instances du champ gênant. Malheureusement, ce format n'inclut pas toutes les formules, juste quelques-uns. S'il vous plaît dites-moi que je n'ai pas besoin d'acheter une application tierce (ou d'écrire ma propre affaire COM) pour faire cette chose apparemment simple. Modifier pour ajouter des détails sur le point tangentiel:
Au cas où tout le monde se demande, je ne suis pas fou - j'ai dupliqué la question où une définition de formule ne se présente pas dans la définition de rapport exportée. J'ai créé un nouveau rapport vide, créé une formule nommée furtive qui renvoie 1234. J'ai ensuite utilisé cette formule dans la section Expert de la section pour la section Détails, dans la formule "Supprimer", le réglant à {@stialseal} == 0. L'utilisation de la formule apparaît, mais pas la définition. Donc, lorsque ma colonne indésirable a été utilisée dans la formule, je ne pouvais pas le trouver! Voici à quoi ressemble le RPT def (après avoir supprimé des lignes vides): p>
10 Réponses :
Si vous cliquez avec le bouton droit de la souris sur le champ de l'Explorateur de champ et sélectionnez Rechercher dans Formulas, il devrait afficher une liste de dialogue répertoriant tous les endroits utilisés dans les formules. Sur le côté gauche de la boîte de dialogue se trouve un arbre de tous les endroits possibles, y compris des endroits étranges, tels que le sélecteur d'enregistrement et les fonctions de formatage de la page. Malheureusement, il ne semble pas que la liste des champs totaux exécutifs. P>
Modifier: Oups, tous les endroits qu'il existe est répertorié au bas de la boîte de dialogue; La vue sur l'arborescence est l'ensemble du "DOM" du rapport. P>
Il h. Si cela était aussi simple qu'un clic droit, j'aurais été fait avec cette corde il y a des heures! Maintenant que je savais à rechercher, il était facile d'apprendre que la fonctionnalité que je souhaite et que vous décrivez, n'a été introduite que dans XI version 2 ( help.sap.com/businessobject/product_guides/boexir2/fr/... ) Je tenterai de mettre à jour mon poste de travail demain, en supposant que le vendeur nous Got Crystal de peut-être me fournir la nouvelle version. Merci! (uppote pour le moment et une meilleure réponse demain si personne n'a un moyen de le faire dans l'ancienne version)
Heh, je n'ai même pas compris que c'était une fonctionnalité R2 uniquement. BusinessObjects a déclaré que R2 était juste faite pour .NET 2.0 Compatibilité et rien de nouveau a été ajouté ... Xir2 est disponible en tant que téléchargement ... Vous avez juste besoin de votre numéro de licence (que vous devriez pouvoir obtenir de l'aide-> environ. < a href = "http://resources.businessobjects.com/support/additional_downloads/service_packs/crrystal_reports_en.asp#crxir2" rel = "nfollow noreferrer"> ressources.businessobjects.com/support/additional_downloads/.../a> (service Pack 2 Construction complète).
Si vous avez XIR1, je pense que R2 était une mise à niveau gratuite. Bien sûr, puisque la sève est encore pire que les objets métier, constater que le téléchargement pourrait s'avérer difficile, mais cela ne devrait pas être impossible, et cela devrait être légal. Cela pourrait être utile: ressources.businessobjects.com/support/additional_downloads/...
Si tout échoue ... p>
Cela vous donnera une représentation en texte brut de chaque élément du rapport. Vous pouvez edit strong>: Bien sûr, si j'avais pris la peine de lire complètement votre message, je verrais que vous avez déjà fait cela. P>
très curieux. p> fichier -> export -> rapport d'exportation code>, puis choisissez la définition
rapport (txt) code> option. p>
grep code> ou
ctrl-f code> ou (insérer l'outil de recherche de votre choix) à travers cela. "Trouver dans les formules" fonctionne généralement, mais j'ai dû aller à l'itinéraire d'exportation plusieurs fois, sans raison apparente. P>
Comme je l'ai mentionné dans ma question, j'ai déjà essayé d'exporter vers la définition de rapport, mais ce format n'a pas inclus une liste pour toutes les formules de mon rapport. Peut-être que cela ne montre que des formules qui sont placées dans le rapport à imprimer, par opposition aux formules utilisées par d'autres formules?
Vous avez raison, vous avez mentionné cela. Et j'ai lu votre message trois fois avant de poster ma réponse ... (tête, bureau de la rencontre). Malheureusement, j'utilise activement 9, 10 et XI tous les jours, alors parfois je me confonds. En tout cas, à vrai dire, c'est la première fois que j'ai entendu parler de la définition de rapport ne tout montrant. Avant de "trouver dans Formulas", Signaler Def était la manière officielle. Bien sûr, j'ai eu une "réponse officielle" des décisions de cristal qui était "que nous ne pouvons pas aider, essayez de renouveler le rapport de zéro." :(
Je suis sûr que vous savez cela, mais rappelez-vous que, bien que "Section 4.0" de la définition du rapport s'opple la section "Formules", il peut y avoir lots i> d'autres formules (formules?) Dispersées dans tout le document. Le formatage conditionnel, la suppression, etc., les formules seront plus éloignées, avec l'objet réel qu'ils sont attachés à et pas i> dans la section Formulas. Je vais avoir des cauchemars à ce sujet.
J'ai dupliqué le problème de la formule furtive avec un rapport extrêmement simple. Voir la publication modifiée ci-dessus pour plus de détails. @Adrien, le temps de commencer à avoir des cauchemars :)
Bon $ Diety Code> Je déteste Crystal. Maintenant je déteste-le encore plus; J'ai exactement le même comportement que vous avez décrit. Dans quelle mesure serait-il génial d'avoir une composante de rapport conçue pour être utilisée par les programmeurs plutôt que par les PHB? Franchement. Le cristal était clairement écrit avec l'utilisateur non technique-(l) à l'esprit, mais je ne l'ai jamais vu en production avec ce niveau d'utilisateur. Et pour nous ... c'est juste un cauchemar krudgey. Ce bruit battu que vous entendez est ma tête de rencontre mon bureau un peu plus.
Eh bien, j'ai eu de la chance. Ma première suite de rapports a été actuellement actionnée, il y a des années. C'était en fait plus de programmeur amical, au moins en théorie. Mais avoir à sauver votre dossier toutes les 15 minutes pour vous protéger de l'expérience quotidienne de sa corrompue, le programmateur est inamical. La contrariété la plus drôle (dans le recul) était lorsque les barres de défilement disparaîtraient, échouant des boîtes de dialogue importantes offscreen, pour toujours. Je dois remercier l'action d'être si grave que Crystal me sent toujours génial pour moi, même parfois comme ça :)
J'ai été gâché par le système que nous avons roulé il y a deux ou trois concerts. Malheureusement, cette entreprise est partie et le produit n'est plus disponible; Une copie de la source était pas i> incluse dans ma poignée de main d'argent. (Au moins j'ai eu la poignée de main d'argent, contrairement à certaines).
Je savais déjà à propos de la trouvaille de la formule, mais cette chèque de fichiers ne disparaîtrait pas. J'ai fait l'exportation en texte et recherché dans le fichier et j'ai découvert que l'ancien champ était utilisé comme une sorte pour l'un des groupes ...nice !!!!
Huit ans et la réponse est toujours utile ... contrairement à tant d'entre Internet. :) Heureux que nous puissions aider.
Ceci a été testé sur Xir2 ... P>
Vous modifiez les tables DataSource via la boîte de dialogue "Set DataSource". Maintenant, lorsqu'il entrera dans le mode mappage de la colonne, décochez la case et choisissez une nouvelle colonne qui entraînerait une erreur dans une formule. (C'est-à-dire si la colonne que vous recherchez est une chaîne le remplacer par une colonne DateTime). Allez à l'aperçu et vous devriez obtenir une zone d'erreur comme "une chaîne est requise ici.", Fermer cette erreur et augmente la formule incriminée! P>
+1 c'est à la fois sournois et intelligent. V assistera si cela fonctionne dans R1 demain matin, (il semble que cela aurait à travailler.) Ceci est maintenant juste un exercice intellectuel, comme je l'ai trouvé la formule incriminée réelle! Merci :)
Cela va probablement écraser R1. :)
Je sais que c'est un vieux post, mais ...
Ne frappez pas la recherche dans les formules, cela me sauve aujourd'hui, mais j'avais du mal à trouver la dernière instance du champ. Même après toutes les formules et les condensés sur le rapport ont été pris en charge, j'ai toujours eu une utilisation solitaire de se cacher quelque part. p>
J'ai trouvé qu'il se cache comme un lien de sous-rapport. Faites un clic droit sur la sous-rapport -> «Modifiez les liens de sous-rapport ...» et il y avait le coupable. Chute dans ce post parce que je pensais que quelqu'un d'autre pourrait avoir ce problème aussi. P>
Les champs peuvent aussi parfois se cacher dans "Expert en tri enregistrement" P>
Une autre suggestion. Après avoir suivi beaucoup de suggestions ici, mon rapport me disait encore que la formule était utilisée. J'ai dû fermer le rapport. Quand je l'ouvrirai à nouveau, la coche était partie et elle m'a laissé supprimer. C'était sur Crystal V 11.0.0.0.1282 P>
Répondre à un ancien poste, mais a rencontré un problème similaire. J'ai eu un groupe basé sur la formule que je voulais supprimer qui avait une commande déterminée. Lorsque j'ai changé le groupement dans un champ différent, l'ordre spécifié est resté. Lorsque j'ai supprimé l'ordre spécifié, ma formule pourrait être supprimée. P>
Bien qu'un ancien poste, cet écart fonctionnel existe toujours dans les rapports de cristal lui-même. Nous avons un essai entièrement fonctionnel de 14 jours de notre logiciel tiers qui utilise la dernière API Crystal.net pour rechercher un texte brut dans une bibliothèque de fichiers RPT Crystal RPT dans un swoop. Recherche également les données enregistrées dans les rapports et le texte dans les étiquettes ... ainsi que de la source de données derrière tous vos rapports (procédures stockées, vues et données de table) avec prise en charge de SQL Server, SQL Azure, MySQL, Oracle, Amazon RDS, DB2 et accès. p>
Plus d'info et de téléchargements d'essai sur http://www.finditez.com p>
Remarque, vous devrez télécharger et installer le connecteur d'exécution SAP Crystal.net compatible pour la recherche de votre bibliothèque de fichiers RPT. p>
Dans mon cas, le champ de formule est arrivé à faire partie d'un ancien champ total exécutant, ce qui n'était pas inclus dans le rapport. Une fois que j'ai supprimé cet ancien champ total exécutant, je pourrais supprimer le champ de formule inutilisé. P>
très tard, mais j'utilise CR 2008 (12.3.0.601) et Just aujourd'hui (18/06/2015) J'essaie de ne documenter que les formules de mon rapport. Je connaissais l'exportation de la définition de rapport et la recherche d'une formule dans toutes les formules. Mais il y a environ 50 formules. J'ai découvert que la définition de rapport exportée ne documentinait pas toutes mes formules, mais je n'ai pas tenu la peine de découvrir la logique derrière cela; Au lieu de cela, j'ai plongé toutes les formules dans une section, puis a exporté la définition du rapport. Voila. Bien sûr, j'ai toujours besoin de cogner tous les éléments de définition inutiles. Mais au moins j'ai toutes les formules. P>
Alors avec toutes les grandes sélections .. J'ai toujours eu une seule instance me cache de moi. J'ai découvert où il s'agissait d'un clone de la table de données et de renommer \ Suppression du champ. p>
J'ai ensuite utilisé l'emplacement de la base de données "défini" comme suggéré ci-dessus pour pointer sur ma nouvelle table. Il a fait une erreur quand il ne pouvait pas trouver ce champ mais ne m'a toujours pas dit où il était vraiment (il vient de dire que le champ de rapport). P>
Je ne l'ai pas marqué et cliqué sur Continuer, ce qui a supprimé le champ du rapport. Je l'ai ensuite maqué à la vraie table et j'étais bon. P>
Dans mon cas, il y avait un graphique et le champ était utilisé comme l'un des champs "sur le changement". P>
Basé sur notre conversation ci-dessous dans ma réponse (non), je dirais que vos choix sont à la terre, dans aucun ordre particulier, 1) "Upgrade" à R2, 2) Acheter un outil tiers (existe-t-on?), 3) Ingénieur inversé Le format binaire vous-même ou 4) recréez le rapport de zéro. Rappelez-vous le bug "Save corrompu"? J'ai recréé à partir de zéro plus d'une fois.