Aller au contenu

NBAMBOUCAD

Membres
  • Compteur de contenus

    16
  • Inscription

  • Dernière visite

NBAMBOUCAD's Achievements

Newbie

Newbie (1/14)

0

Réputation sur la communauté

  1. Ah d'accord, ouais ça marche tip top. Ah et j'ai remarqué un petit défaut pour l'attribution des valeurs du champs "*_TYPE", le programme applique les règles d'attribution de la liste "l_der" à toutes les lignes possédant un champ du type "*_TYPE", même ceux ne se trouvant pas dans la liste "l_der". Pourrait-on limiter cette attribution au seuls éléments de la liste? Merci!!
  2. Ah super, mais quand j'applique le programme les entiers on ensuite la valeur ("DefaultVal" . 0.0), c'est ce que je constate après avoir fait: (foreach i (caddr (ade_odtabledefn "A_RE")) (print i)) Une autre chose qui m'était sortie de la tête, tout les points du dessin doivent être dans le même bloc point à la fin du dessin (pendant le traitement du dessin ils ont des blocs points différents ce qui facilite leur identification), et avec un attribut différent en fonction du nom du calque. Et pour tous les points du dessin leur coordonnée Z doit être associé au champ (du bloc point de substitution) "TAL_COTZ". Ces processus doivent être réalisé à la fin du dessin et ne doivent donc pas être intégré au code déjà existant (procédure attribution des tables, remplissage attribut, etc..), il faut en créer un nouveau. Je t'envoie le tableau en MP.
  3. J'ai bien reçu ton virement paypal et je t'en remercie vivement, je n'en espérais pas tant.

    C'est bien la 1ere fois qu'une telle proposition m'est faite sur le forum.

    Je pense que si tu as d'autres problèmatiques que je puisse résoudre, n'hésite pas, même sans rénumération. Après les délais sont suivant ma disponibilité et mes compétences.

    (tu as ...

  4. Ah oui en effet. Ils doivent donc forcément avoir une valeur par défaut de .0 pour ne pas être considéré comme nil? Le champ "OBJECTID" est aussi un entier mais est bien définit avec ("DefaultVal" . 0) il devrait donc avoir la même définition que lui. Toutes les tables possédant ces champs sont impactés. Et c'est le client qui définit les tables je vais lui faire part du problème. Je te tiens au courant, et je t'envoie du bonus ce soir! Et UN GRAND MERCI pour ce taff énorme!!
  5. Oui c'est nickel, je n'ai cité que deux exemples mais je voulais bien appliquer juste le dernier caractère à tous les blocs ayant deux caractères après le "_", c'est tout bon pour cette partie du programme! Tout comme pour "*_STAT" et "*_ORIENT", c'est tout bon! En regardant dans la table de donnée j'ai vu que le type de donné était "court", d'après le ce que j'ai compris la valeur renseigné doit être de type entier et faire moins de 5 caractères. De plus, j'ai oublié de te dire qu'il est impératif que les valeurs "*_LONG" et "*_LARG" soient arrondies au cm, est-il possible de transformer un caractère de type réel en caractère de type entier? Je pense que même si il n'a plus de caractère après le "." un caractère du type réel n'est pas accepté dans ces champs car ils n'acceptent que des caractères du type entier. Et je n'ai malheureusement pas le droit de modifier la définition des tables.
  6. Super la procédure marche du tonnerre! Je te soumets juste une petite amélioration si possible: Actuellement, les valeurs qui sont renseignés (d'après mes tests et si j'ai un petit peu compris le codage) dans les champs correspondent au caractères se trouvant après le dernier "_" du nom du bloc. Cependant parfois il y a deux caractères (ex: "type_eq_ass_AG" ou "ft_c1") du coup les valeurs renseigné dans les champs sont les deux caractères (ex: respectivement "XXX_TYPE"="AG" ou "XXX_TYPE"="c1".) Serait -il possible que ce soir uniquement le dernier caractère de la chaîne du nom du bloc qui soit renseigné? (ex: Pour bloc "type_eq_ass_AG" valeur "XXX_TYPE"="G" ou pour ligne "ft_c1" valeur "XXX_TYPE"="1") Et le tout dernier point serait d'automatiser le remplissage du champ "XXX_ORIENT" des tables OD par la valeur du champs "rotation" des propriétés de l'objet, du champ "XXX_LONG" des tables OD par la valeur du champs "Echelle en X", du champ "XXX_LARG" des tables OD par la valeur du champs "Echelle Y" et ceci pour tous les objets du dessin. Ah oui et aussi ajouter la valeur "A" au champ "XXX_STAT" des tables OD pour tous les objets du dessin. Merci d'avance!
  7. Je suis moi même impressionné par le dévouement de Bruno, et ne peut que le louer! Je testes cette œuvre dès demain ! Encore merci PS: tcheck tes MP
  8. Oui je sais que c'est plutôt galère, Alors pour le nom de la ligne, on le trouve sous l'onglet "type de ligne" dans les propriétés de la ligne, cependant je ne sais pas si c'est un champ alphanumérique étant donné qu'on trouve aussi la représentation graphique de la ligne dans cet onglet. Je t'envoie un fichier avec des exemples de types de lignes: C'est là le hic, la valeur de l'attribut dépends du nom du bloc exclusivement, du coup l'une des trois possibilité varie selon le type de bloc, je ne sais pas si il est possible d'entrer tout une liste de nom de bloc pour laquelle tel ou tel possibilité s'applique? Du coup après test, la procédure marche nickel, cependant elle ne fait pas un filtre par rapport aux calque du document excel, je désirerai attribuer uniquement les bloc de la liste et non pas tous les calques du dessin (même si ceci on des champs "_TYPE" ou "_NATURE" etc..) du coup ceci nous ramène au paragraphe précédent su la liste. Ou sinon je dissocier les deux procédure puis faire la deuxième en isolant les blocs concerné je pense, tu confirmes? Tu trouveras dans le fichier dwg exemple des blocs ne se trouvant pas dans la liste, ça sera plus parlant Merci beaucoup bonuscad, c'est déjà génial d'arriver jusqu'ici!
  9. Il y avait une petite erreur dans l'ancien fichier, je l'ai modifié, bien prendre la version du message mise à jour.
  10. Wahouu, quelle efficacité ça marche nickel!! Bon j'ai un nouveau défi pour toi Je souhaiterais ensuite automatiser le remplissage de certains champs des object data en fonction du bloc ou du type de ligne. Je te joins le fichier résumant le différent type de lien à créer: Ps: Si tu réussi ça envois moi aussi ton compte paypal
  11. Nickel merci beaucoup ça marche super!! Cela m'avait échappe mais il y quelques calques où le suffixe des calques qui correspond au nom de la table n'est pas composé de 4 mais de 5 caractère. Ex: Cela marche pour les calques: - BAT--B_LD qui associe la table B_LD - MEDIA--I_SU qui associe la table I_SU Mais ne marche pas pour les calque tel que: - VOI--I_SIGN qui n'arrive pas à associer la table M_SIGN - ELEC--E_TRON qui n'arrive pas à associer la table E_TRON Solution: Serait-il possible de passer d'une association calque/table correspondant aux 4 derniers caractères à une association correspondant aux caractères se trouvant après les caractère "--" car ces caractères sont toujours présent dans le nom des calques et les caractères suivant "--" correspondent systématiquement au nom de la table associé. Merci d'avance et merci encore à vous, vous êtes mes sauveurs!!
  12. Merci beaucoup Bonuscad, Je teste ça demain!
  13. Merci bonuscad, J'essaye, cependant le programme ne semble me permettre que de créer une liste.
  14. Pardon, le dernier URL n'a pas fonctionné en voici un fonctionnel https://image.noelshack.com/fichiers/2019/15/2/1554797440-logigramme-de-l-attribution-automatique-des-tables-d-object-data-par-calque.jpg Merci !
  15. Merci LeCrabe, Pour la sélection d'objet par de problème, j'ai créé un enregistreur d'action, celui: -Ouvre l'outil sélection par filtre, invite à sélectionner un calque -Isole les éléments de la sélection -Ouvre l'outil "Onglet Map - Données et analyses/ Données d'objet/ Associer ou dissocier les objets" qui invite a renseigner la table à attribuer. Il reste ensuite plus qu'a cliquer sur "Associer aux objets <" et sélectionner les objets préalablement isolé. Cet enregistreur fait gagner un peu de temps, mais je souhaiterais automatiser l'association d'une table à un calque. Je pense que le logigramme est le suivant: [/url][/img]
×
×
  • 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é