Aller au contenu

Messages recommandés

Posté(e)

Bonjour,

Je souhaiterais avoir un parametre recuperant d'autre parametres

 

exemple le parametre "designation" contient le resultat du parametre "diam_fil" et le resultat du parametre "long_libre"

pour avoir la synthaxe DESIGNATION = RESSORT Ø1 LONG=25

Merci pour votre aide

Roger

Posté(e)

Tu peux additionner deux paramètres Texte avec un simple +

Exemple : DESIGNATION = TOTO + TITI

 

Tu peux également transformer un paramètre numérique en texte avec la formule ITOS()

Exemple : PARAM_TEXTE = ITOS(PARAM_NUMBER)

 

Donc en cumulant les 2 tu peux construire ta DESIGNATION

Posté(e)

Merci pour votre reponse .......mais:

je recupere bien les valeurs du Øfil et la valeur de la Longueur mais si je rajoute le mot RESSORT cela ne fonctionne plus.

designation=RESSORT ITOS(diam_fil) + ITOS(long) ERREUR

designation=ITOS(diam_fil) + ITOS(long) RESULTAT 1 25

 

Autre manip

J'ai cree une note 3d qui est le reflet de ce que je voudrais comme designation et

Je pensais pouvoir recuperer le contenu de cette note 3d dans mon parametre designation, mais la aussi j'ai des message d'erreur quand j'ecris la reletion:

designation=note_3:3

 

Avez vous d'autres astuces pouvant repondre a mon probleme ?

 

Merci

Posté(e)

Pour ajouter une chaine de caractères il faut la mettre entre guillemets:

DESIGNATION = "RESSORT" + ITOS(DIAM_FIL)

 

Pour la récupération de la note dans un paramètre je n'ai jamais testé, d'habitude on fait le contraire; récupérer la valeur du paramètre dans la note.

Posté(e)

Ok Merci j'arrive a mes fins .......mais,

Comment recuperer la valeur reel des parametres.

J'ai vu que l'on pouvait recuperer la valeur avant la virgule et la valeur apres la virgule et ensuite les assembler dans une chaine .

Ca me parait bien lourd pour recuperer une valeur reelle.

 

Merci pour votre aide

  • 2 semaines après...
Posté(e)

Il faut copier la formule dans un document texte et faire un copier-coller le jour où tu en as besoin.

La bonne nouvelle est qu'en général on utilise ce genre de formule sur un gabarit ou dans une famille de pièces, donc une fois entrée il n'y a en théorie plus besoin d'y revenir.

Posté(e)

Voici les relations que j'utilise dans mes gabarits de démarrage. Elles détectent automatiquement si certaines des cotes de la pièce sont nommées :

"longueur", "largeur", "hauteur", "profondeur", "diametre" ou "epaisseur"

 

/**** ATTRIBUTION DES PARAMETRES DIMENSIONNELS *****

 

IF EXISTS ("designation")

DESIGNATION_LONGUE=DESIGNATION

ELSE

DESIGNATION_LONGUE=REL_MODEL_NAME()

ENDIF

 

 

/*** POUR CHANGER LE NOMBRE DE DÉCIMALES APRÉS LA VIRGULE :

 

DECIMALES=2

 

IF EXISTS("diametre")

_C=ITOS(DIAMETRE*10^DECIMALES)

_P=STRING_LENGTH(_C)-DECIMALES

_F="," + EXTRACT(_C,_P + 1,DECIMALES)

DESIGNATION_LONGUE=DESIGNATION_LONGUE + " Ø" + EXTRACT(_C,1,_P)

IF _F != EXTRACT(",000000000000000",1,DECIMALES + 1)

DESIGNATION_LONGUE=DESIGNATION_LONGUE + _F

ENDIF

ENDIF

 

IF EXISTS("hauteur")

_C=ITOS(HAUTEUR*10^DECIMALES)

_P=STRING_LENGTH(_C)-DECIMALES

_F="," + EXTRACT(_C,_P + 1,DECIMALES)

DESIGNATION_LONGUE=DESIGNATION_LONGUE + " H:" + EXTRACT(_C,1,_P)

IF _F != EXTRACT(",000000000000000",1,DECIMALES + 1)

DESIGNATION_LONGUE=DESIGNATION_LONGUE + _F

ENDIF

ENDIF

 

IF EXISTS("largeur")

_C=ITOS(LARGEUR*10^DECIMALES)

_P=STRING_LENGTH(_C)-DECIMALES

_F="," + EXTRACT(_C,_P + 1,DECIMALES)

DESIGNATION_LONGUE=DESIGNATION_LONGUE + " l:" + EXTRACT(_C,1,_P)

IF _F != EXTRACT(",000000000000000",1,DECIMALES + 1)

DESIGNATION_LONGUE=DESIGNATION_LONGUE + _F

ENDIF

ENDIF

 

IF EXISTS("profondeur")

_C=ITOS(PROFONDEUR*10^DECIMALES)

_P=STRING_LENGTH(_C)-DECIMALES

_F="," + EXTRACT(_C,_P + 1,DECIMALES)

DESIGNATION_LONGUE=DESIGNATION_LONGUE + " P:" + EXTRACT(_C,1,_P)

IF _F != EXTRACT(",000000000000000",1,DECIMALES + 1)

DESIGNATION_LONGUE=DESIGNATION_LONGUE + _F

ENDIF

ENDIF

 

IF EXISTS("epaisseur")

_C=ITOS(EPAISSEUR*10^DECIMALES)

_P=STRING_LENGTH(_C)-DECIMALES

_F="," + EXTRACT(_C,_P + 1,DECIMALES)

DESIGNATION_LONGUE=DESIGNATION_LONGUE + " e:" + EXTRACT(_C,1,_P)

IF _F != EXTRACT(",000000000000000",1,DECIMALES + 1)

DESIGNATION_LONGUE=DESIGNATION_LONGUE + _F

ENDIF

ENDIF

 

 

IF EXISTS("LONGUEUR")

_C=ITOS(LONGUEUR*10^DECIMALES)

_P=STRING_LENGTH(_C)-DECIMALES

_F="," + EXTRACT(_C,_P + 1,DECIMALES)

DESIGNATION_LONGUE=DESIGNATION_LONGUE + " L:" + EXTRACT(_C,1,_P)

IF _F != EXTRACT(",000000000000000",1,DECIMALES + 1)

DESIGNATION_LONGUE=DESIGNATION_LONGUE + _F

ENDIF

ENDIF

 

Comme on peut le constater, ces relations complètent automatiquement le paramètre "designation_longue" à partir du paramètre "designation" et des paramètres dimensionnels, permettant ainsi d'obtenir facilement des nomenclatures de débit précises...

Remarque : si le paramètre "designation" n'existe pas, c'est le nom de la pièce ou de l'assemblage qui est utilisé comme base pour la designation longue.

 

[Edité le 28/10/2009 par fhughes]

Changer ses habitudes, c'est déjà innover...

  • 1 mois après...
Posté(e)

Pour transformer en texte une cote ou un paramètre TOTO avec 2 chiffres après la virgule, et en une seule ligne de relation:

 

TOTO_TEXTE=extract(itos(TOTO*100),1,string_length(itos(TOTO*100))-2)+"."+extract(itos(TOTO*100),string_length(itos(TOTO*100))-1,2)

 

10.75 => 10.75

10.375 => 10.38

10.1 => 10.10

10 => 10.00

 

Pour ne pas mettre 2 chiffres après la virgule lorsque la valeur d'origine n'en a pas je n'ai pas trouvé de solution en une seule ligne... il faut passer par qq conditions

 

[Edité le 21/12/2009 par hoppla]

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité