<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>Thema "Re: elementID_conflict - Zeilenumbruch einfügen" in Programmierung</title>
    <link>https://community.graphisoft.com/t5/Programmierung/elementID-conflict-Zeilenumbruch-einf%C3%BCgen/m-p/558122#M6803</link>
    <description>Danke Shadow!&lt;BR /&gt;Ich hatte Urlaub, deshalb die späte Antwort. Wenn die erste "Nachurlaubshitze" vorbei ist, werde ich es versuchen. &lt;BR /&gt;Beste Grüße&lt;BR /&gt;Mario</description>
    <pubDate>Mon, 17 Aug 2020 05:44:39 GMT</pubDate>
    <dc:creator>Ma_Scht</dc:creator>
    <dc:date>2020-08-17T05:44:39Z</dc:date>
    <item>
      <title>elementID_conflict - Zeilenumbruch einfügen</title>
      <link>https://community.graphisoft.com/t5/Programmierung/elementID-conflict-Zeilenumbruch-einf%C3%BCgen/m-p/558120#M6801</link>
      <description>Howdy, &lt;BR /&gt;bin am "pythonieren" im Embrionalstatus.&lt;BR /&gt;&lt;BR /&gt;&lt;!-- m --&gt;&lt;A class="postlink" href="https://graphisoft.com/downloads/python"&gt;https://graphisoft.com/downloads/python&lt;/A&gt;&lt;!-- m --&gt;&lt;BR /&gt;&lt;BR /&gt;In dem Programm von GS zur Verfügung gestellten Programm "elementID_conflict.py" möchte ich einen Zeilenumbruch "\n" nach jedem Element einfügen. Ich versuchte es bereits an X Stellen, aber erfolglos. &lt;BR /&gt;Mann ist das kompliziert. :--)&lt;BR /&gt;&lt;BR /&gt;Am vielversprechendsten schein mir Zeile 28 zu sein&lt;BR /&gt;    propertyValuesToElementIdsDictionary[propertyValue].add(elementId)&lt;BR /&gt;Das "ADD" läd förmlich dazu ein, was dazuzuschreiben. &lt;BR /&gt;&lt;BR /&gt;Kann mir bitte jemand helfen um "reinzukommen"&lt;BR /&gt;&lt;BR /&gt;Danke &amp;amp; Gruß</description>
      <pubDate>Fri, 31 Jul 2020 06:05:55 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Programmierung/elementID-conflict-Zeilenumbruch-einf%C3%BCgen/m-p/558120#M6801</guid>
      <dc:creator>Ma_Scht</dc:creator>
      <dc:date>2020-07-31T06:05:55Z</dc:date>
    </item>
    <item>
      <title>Re: elementID_conflict - Zeilenumbruch einfügen</title>
      <link>https://community.graphisoft.com/t5/Programmierung/elementID-conflict-Zeilenumbruch-einf%C3%BCgen/m-p/558121#M6802</link>
      <description>Hallo Mario&lt;BR /&gt;&lt;BR /&gt;Der Code von GS ist ziemlich kondensiert. Das &lt;I&gt;kann&lt;/I&gt; man so schreiben, aber ist nicht wirklich Anfängerfreundlich.&lt;BR /&gt;&lt;BR /&gt;Um die GUIDs der Elemente auf einer eigenen Zeile zu haben, musst du die Funktion "GetConflictMessage" durch die hier ersetzen:&lt;BR /&gt;&lt;BR /&gt;&lt;PRE&gt;&lt;BR /&gt;def GetConflictMessage(elementIDPropertyValue, elementIds):&lt;BR /&gt;    elem_str = ("\n".join(map(str, sorted(elementIds, key=lambda id: id.guid))))&lt;BR /&gt;    return f"{conflictMessageParts[0]} {len(elementIds)} {conflictMessageParts[1]} '{elementIDPropertyValue}' {conflictMessageParts[2]}" + elem_str&lt;BR /&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;Pass auf die korrekte Indentation auf! Python mag es nicht, wenn man Leerzeichen und Tabulatoren mixt.&lt;BR /&gt;&lt;BR /&gt;############################################&lt;BR /&gt;&lt;BR /&gt;Was ich hier gemacht hab, ist den letzten Teil der Konfliktmessage aus dem return abzuschneiden und in eine eigene Variable zu überführen.&lt;BR /&gt;Gleich schon mal einiges an Übersichtlichkeit gewonnen!&lt;BR /&gt;&lt;BR /&gt;"elem_str" bekommt folgendes assigned:&lt;BR /&gt;(Von innen nach außen)&lt;BR /&gt;Sortiere die elementIds, nach ID (nicht dass das aus meiner Sicht nötig wäre, aber GS hatte das im Beispiel so drin), dann mappe jedes Item der Liste (momentan noch vom Typ "ElementID") in einen String. (Eine genaue &lt;A href="https://www.journaldev.com/22960/python-map-function" target="_blank"&gt;Erklärung von map&lt;/A&gt;.)&lt;BR /&gt;Das gibt uns einen Iterator zurück, sodass wir in dieser Liste endlich jedes Item (nun vom Typ String! Das ist wichtig, sonst klappt es nicht -&amp;gt; dafür war "map" wichtig) mit einem Umbruch joinen können.&lt;BR /&gt;Bisschen Vodoo, aber man kommt da rein &lt;span class="lia-unicode-emoji" title=":leicht_lächelndes_Gesicht:"&gt;🙂&lt;/span&gt;</description>
      <pubDate>Fri, 31 Jul 2020 16:19:56 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Programmierung/elementID-conflict-Zeilenumbruch-einf%C3%BCgen/m-p/558121#M6802</guid>
      <dc:creator>runxel</dc:creator>
      <dc:date>2020-07-31T16:19:56Z</dc:date>
    </item>
    <item>
      <title>Re: elementID_conflict - Zeilenumbruch einfügen</title>
      <link>https://community.graphisoft.com/t5/Programmierung/elementID-conflict-Zeilenumbruch-einf%C3%BCgen/m-p/558122#M6803</link>
      <description>Danke Shadow!&lt;BR /&gt;Ich hatte Urlaub, deshalb die späte Antwort. Wenn die erste "Nachurlaubshitze" vorbei ist, werde ich es versuchen. &lt;BR /&gt;Beste Grüße&lt;BR /&gt;Mario</description>
      <pubDate>Mon, 17 Aug 2020 05:44:39 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Programmierung/elementID-conflict-Zeilenumbruch-einf%C3%BCgen/m-p/558122#M6803</guid>
      <dc:creator>Ma_Scht</dc:creator>
      <dc:date>2020-08-17T05:44:39Z</dc:date>
    </item>
  </channel>
</rss>

