> For the complete documentation index, see [llms.txt](https://docs.geodin.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.geodin.com/geodin-ground/fr/flux-de-travail-et-integrations/arcgis-integration/arcgis-pro-attach-reports.md).

# Attacher des Rapports sur les annotations de Trou de forage

{% embed url="<https://www.youtube.com/watch?v=34Gydh4vkws>" %}

> **Chapitres vidéo :** 0:00 Comment GeoDin organise les dossiers de Rapports de Sondages | 0:37 Trouver les annotations de document | 1:14 Préparation du champ AttachKey | 1:53 Sélection des Sondages avec Documents liés | 2:25 Calcul des Valeurs AttachKey | 3:33 Activation et génération des Concordances de pièces jointes | 4:35 Ajout des pièces jointes | 5:34 Vérification des Rapports joints

Lorsqu’un dessin Civil 3D avec des Sondages GeoDin® Ground est importé dans ArcGIS Pro ([tutoriel Précédent](/geodin-ground/fr/flux-de-travail-et-integrations/arcgis-integration/arcgis-pro-ground-model.md)),

{% hint style="info" %}
Pour le même workflow à partir de Couches de points exportées depuis GeoDin® (un enregistrement par Trou de forage), voir [Joindre des Rapports](https://docs.geodin.com/integrations-and-plug-ins/overview/attach-reports) inclus dans la documentation GeoDin®. La version ci-dessous traite de la Couche d’annotations Civil 3D, où chaque Trou de forage a **plusieurs** Enregistrements d’annotations.
{% endhint %}

## Étape 1 : Localisez les rapports et confirmez les annotations

* À l’Importer, GeoDin® Ground crée un Répertoire de documents à côté du dessin, structuré par Projet avec un sous-répertoire par Trou de forage, chacun contenant le Rapport géotechnique de ce Trou de forage.
* Copier les PDF du Rapport dans un seul Répertoire de travail pour simplifier la correspondance.

<figure><img src="/files/47c67a2cce344bec02daac79254807e682660372" alt=""><figcaption><p>Le Répertoire des documents exportés et le PDF du journal géotechnique de sol d’un Trou de forage</p></figcaption></figure>

* inclus dans la Table attributaire de la couche d’annotation, confirmez l’enregistrement du document du Trou de forage : son **Nom de référence** indique « 1 document(s) ».

<figure><img src="/files/928942306707d15d0d4344311511f17c27b87610" alt=""><figcaption><p>L’enregistrement de l’annotation du document dans la Table attributaire</p></figcaption></figure>

## Étape 2 : Ajouter un champ clé

* Ouvert la Vue des champs de la classe d'entités et Ajouter un Nouveau champ nommé **AttachKey** avec **Type de donnée = Texte**. Sauvegarder les changements.

<figure><img src="/files/c420000bcf27c7a34cfdb5aaac3aa7151254b248" alt=""><figcaption><p>Le champ AttachKey ajouté comme Texte</p></figcaption></figure>

## Étape 3 : Sélectionner uniquement les annotations du document

* Utiliser **Sélectionner par Attributs** avec la clause : **RefName Contient le Texte** `document`.
* Appliquer et vérifier le Compte de Sélection avant de continuer - la clé ne doit être calculée que pour ces Enregistrements.

<figure><img src="/files/1dcdb4af2ebee80144d10d619eb220a157aa605e" alt=""><figcaption><p>Sélection des Enregistrements d'annotation du document</p></figcaption></figure>

## Étape 4 : Calculer la clé

* Avec la Sélection active, cliquez avec le bouton droit **AttachKey > Calculer le champ**, définissez **Type d'expression = Python**, expression `extract_bh(!Couche!)`, et ce bloc de code :

```python
def extract_bh(Couche):
    Couche = Couche.upper()

    # Définir le préfixe et le suffixe connus
    préfixe = "LOC_BASE-"
    suffix = "-BASIC"

    Si Couche.startswith(prefix) et Couche.endswith(suffix):
        retourner Couche[len(prefix):-len(suffix)] + " -"

    retourner aucun / aucune
```

<figure><img src="/files/8f683fe6ff5e964d6be8b9477a067867d384763c" alt=""><figcaption><p>Calcul du champ appliqué sur les enregistrements sélectionné uniquement</p></figcaption></figure>

* La partie finale `" -"` C'est intentionnel : cela rend la clé suffisamment spécifique pour correspondre par préfixe à un seul nom de fichier de Rapport, de sorte que des Sondages nommés de façon similaire (BH1 contre BH1A) ne peuvent pas être mis en correspondance croisée.

<figure><img src="/files/108a494b1417e1559f92e8ce9347beeb91de4774" alt=""><figcaption><p>La clé renseignée - Nom de forage plus un tiret final</p></figcaption></figure>

## Étape 5 : Activer les pièces jointes

* Ouvert la classe d'entités **Propriétés > Gérer** et activer **Pièces jointes** (les pièces jointes sont une fonctionnalité de géodatabase - la Couche d'annotation doit être une classe d'entités de géodatabase, pas un shapefile). Sauvegarder.

<figure><img src="/files/747c6530071d801cfa51cdc2c4f57daec6e3a0d6" alt=""><figcaption><p>Pièces jointes activées à la classe d'entités</p></figcaption></figure>

## Étape 6 : Générer le tableau de correspondance

* Exécutez le **Générer le Tableau de correspondance des pièces jointes** outil de géotraitement :
  * **Jeu de données en entrée**: la couche d'annotation (Enregistrements sélectionné).
  * **Répertoire d'entrée**: le répertoire de travail avec les PDF.
  * **Champ clé**: `AttachKey` - **Filtre des Données d'entrées**: `*.pdf` - **Modèle de correspondance**: **Préfixe**.

<figure><img src="/files/ab33835100d949ce6ea8a6bd456d58a3995d42fe" alt=""><figcaption><p>Générer le Tableau de correspondance des pièces jointes avec le modèle de correspondance défini sur Préfixe</p></figcaption></figure>

## Étape 7 : Ajouter les pièces jointes

* Exécuter **Ajouter des pièces jointes** avec le même jeu de données en entrée, **Champ de jointure d'entrée** `OBJECTID`, le tableau de correspondance de l'étape 6, et **Champ de jointure de correspondance** `ID de correspondance`.

<figure><img src="/files/d4389c3503099424d338ca0f349fcdd3b8349a3f" alt=""><figcaption><p>Ajouter des pièces jointes en joignant OBJECTID sur MatchID</p></figcaption></figure>

## Étape 8 : Vérifier

* Cliquez sur une annotation de document inclus dans la scène et faites défiler sa fenêtre contextuelle : le Rapport géotechnique apparaît comme pièce jointe.
* Vérifiez rapidement un ou deux Sondages supplémentaires pour confirmer que la correspondance a fonctionné de manière cohérente.

<figure><img src="/files/1d94c564fc546ab6191df0b0184594cde05fb22a" alt=""><figcaption><p>Le Rapport joint à l’annotation, vérifié inclus dans la fenêtre contextuelle</p></figcaption></figure>

## Paramètres facultatifs

* **Portée de la Sélection** - calculer la clé **uniquement pour les Enregistrements du document sélectionné**; le calcul sur toutes les Ligne crée des Concordances incorrectes.
* **Spécificité de la clé** - si plusieurs rapports ont des noms similaires, rendez le format de la clé plus spécifique avant la mise en correspondance (la partie finale `" -"` existe précisément pour cela).

***

## Utilisation de la correspondance des pièces jointes

Confirmez que les pièces jointes sont activées avant de lancer la correspondance ET Ajouter des outils, puis vérifiez ponctuellement un Trou de forage après chaque Étape (clé calculé, Tableau de correspondance généré, pièces jointes ajoutées) afin qu’une incohérence soit détectée une Étape après sa cause plutôt qu’à la Fin.

***

**Suivant Étape :** [Publiez ET examinez le modèle en tant que scène Web](/geodin-ground/fr/flux-de-travail-et-integrations/arcgis-integration/arcgis-web-scene.md) - les Rapports attachés restent Disponible inclus les pop-ups de la scène publiée.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.geodin.com/geodin-ground/fr/flux-de-travail-et-integrations/arcgis-integration/arcgis-pro-attach-reports.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
