# Logiciels > Solutions d'entreprise > Business Intelligence > SAP Crystal Reports > [CR 2013] Crystal Report / Sage X3 formules personnalises

## Avatar

Bonjour,

Nous utilisons CR2013 avec SAGE X3 V7. Un ancien collge avait cr une fonction personnalise pour formater les numros de tlphone. Cette fonction est prsente dans de nombreux rapports.
Nous sommes en train de passer en SAGE X3 V12 que nous avons install sur un nouveau serveur. Les rapports ont t copis sur ce nouveau serveur.

Par contre lorsque nous imprimons un rapport depuis X3 V12, nous avons le message d'erreur suivant :


```

```

J'ai rinstall CR2013 sur le nouveau serveur.
J'ai copi l'ancienne dll u212com.dll sur le nouveau serveur. J'ai essay de charger la dll avec regsrv32.exe mais j'ai le message d'erreur suivant 


```

```

Lorsque j'ouvre un tat Crystal Reports et que je vais dans l'atelier de formule, aussi bien sur le nouveau que sur l'ancien serveur, je n'ai rien dans les fonctions personnalises du rapport.
Je n'arrive pas  accder aux fonctions personnalises du rfrentiel. On me demande des utilisateurs et des mots de passe que je n'ai pas et de toute faon il ne me semble pas avoir de Central Management Server?

Merci pour votre aide

----------


## luc_chivas

Bonjour
Pour formater tes numro de tlphone, tu peux peut tre utiliser la fonction picture qui est native

----------


## sfino33

> Bonjour
> Pour formater tes numro de tlphone, tu peux peut tre utiliser la fonction picture qui est native


Bonjour Luc, pourriez vous nous donner la syntaxe exacte en utilisant "Picture".
Par contre, il semblerait qu'il soit possible d'utiliser le format des numros de tlphone prsent dans la table des pays dans Sage, comme argument de cette fonction"Picture".
Mais la syntaxe me manque.
Merci d'avance

----------


## luc_chivas

exemple

picture ("123456789","(xxx) xxx-xxxx")

----------


## Avatar

Merci pour cette rponse, mais en fait X3 stock le numro de tlphone sans indicatif international dans une table et l'indicatif dans une autre. Quelques exemples d'indicatifs internationaux stocks dans X3 


```

```

D'o la fonction personnalise pour extraire l'indicatif international, le joindre au numro de tlphone et formater le tout.

De plus, j'aurais aim comprendre o sont stockes ces fonctions personnalises....

Merci et bonne journe

----------


## luc_chivas

Bonjour

Pour extraire l'indicatif, utiliser la fonction "extractstring".. 
extractstring(monchamps,"(",")" puis concatener avec le numro de tlephone.

ou alors la fonction mid et instr pour trouver le plus, calculer le point de dpart, enlever 1 pour rcuprer le "+" et prendre 3 caractres.

La fonction personnalise sans rfrentiel (server) ne se trouve que dans le rapport qui les utilise, il faut la recopier  chaque nouveau rapport

----------


## Avatar

Merci pour cette rponse, je rcrirai une fonction si je n'ai pas le choix mais nous avons un grand nombre de rapport avec des numros de tlphones et je prfrerai rcuprer la fonction existante.

O voit-on les fonctions personnalises? comment peut-on les modifier?

J'ai ouvert un rapport utilisant cette fonction personnalise. Dans l'atelier formule, j'ai un cran vide quand je clique sur les fonctions personnalises du rapport.
J'imagine donc que c'est une fonction personnalises du rfrentiel? Comment savoir si j'ai un Central Management Server?

Lorsque j'dite une formule, ma fonction est classe dans Fonctions/Fonctions supplmentaires/UFL COM et Net (u212.com.dll) si a peut aider.

Merci

----------


## luc_chivas

un exemple

https://www.barcoderesource.com/Crys...Code_UFL.shtml

----------


## Avatar

j'ai rcupr ma dll u212com.dll de l'ancien serveur et je l'ai copi dans le nouveau serveur dans le rpertoire
J'ai lanc la commande gacutil -i avec ma dll et j'ai le message d'erreur suivant : chec de l'ajout de l'assembly au cache*:   Le module tait cens contenir un manifeste de l'assembly.
idem pour la commande Regasm : RegAsm : error RA0000 : chec de chargement de 'C:\Program Files (x86)\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\win32_x86\u212com.dll', car ce n'est pas un assembly .NET valide

merci

----------


## luc_chivas

essaye de la mettre l

C:\Program Files (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinessObjects Enterprise XI 4.0\win32_x86

----------


## Avatar

Bonjour,

Je n'ai pas ce dossier Crystal Reports for .NET Framework 4.0?

merci

----------


## Avatar

Bonjour,

J'ai finalement laiss tomb et rcrit une formule pour formater les numros de tlphones.

Merci



```

```

----------


## PrinceCorwin

Bonjour,

J'avais fait une fonction personnalise aussi dans le mme genre en basic, mes connaissances sont plus que limites en langage Crystal...



```

```

Votre fonction  l'air plus lgante  ::):

----------

