<?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: GDL-Bug?" in Dokumentation</title>
    <link>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532450#M18310</link>
    <description>Die Variable ist auch keine Zahl, sondern ein Text. Daher auch das Problem. &lt;BR /&gt; So gesehen ist es kein Bug in GDL, sondern eher ein "Bug" im GDL DateTime AddOn. &lt;BR /&gt; Obwohl, hier von einem Bug zu sprechen ist FALSCH. Das Datum wird halt in einem String, also einer Textvariable ausgelesen. Hat auch den Vorteil, verschiedene Formatierungen vornehmen zu können.&lt;BR /&gt; &lt;BR /&gt; In der Erklärung das GDL DateTime AddOns steht übrigens auch:&lt;BR /&gt; &lt;I&gt;Es liest einen Wert vom Typ &lt;B&gt;Zeichenfolge&lt;/B&gt; ein, der Datum und/oder Zeit in dem, durch die ÖFFNEN-Sequenz angegebenen Format repräsentiert.&lt;/I&gt;</description>
    <pubDate>Tue, 07 May 2002 09:20:00 GMT</pubDate>
    <dc:creator>Bernhard Binder</dc:creator>
    <dc:date>2002-05-07T09:20:00Z</dc:date>
    <item>
      <title>GDL-Bug?</title>
      <link>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532446#M18306</link>
      <description>HR. Binder!&lt;BR /&gt; &lt;BR /&gt; warum geht das nicht?&lt;BR /&gt; &lt;BR /&gt; !!!Start&lt;BR /&gt; ch = OPEN ("DateTime","","%j") !!%j  !!Tag des Jahres, als Dezimalzahl (001-366)    &lt;BR /&gt; n = INPUT (ch, "","",tag)&lt;BR /&gt; print tag&lt;BR /&gt; close (ch)&lt;BR /&gt; dstr=ceil(tag)&lt;BR /&gt; print tag&lt;BR /&gt; !!!!Ende&lt;BR /&gt; &lt;BR /&gt; in ersten print zeigt er mir brav 126 (heute)&lt;BR /&gt; im 2. print zeigt er mir 10???</description>
      <pubDate>Mon, 06 May 2002 14:10:00 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532446#M18306</guid>
      <dc:creator>Hmooslechner</dc:creator>
      <dc:date>2002-05-06T14:10:00Z</dc:date>
    </item>
    <item>
      <title>Re: GDL-Bug?</title>
      <link>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532447#M18307</link>
      <description>der Code, den Sie geschrieben haben zeigt auf jeden Fall 2 mal dasselbe Ergebnis, weil sie 2 mal dieselbe Variable ausgeben. Ich denke, der 2. Printbefehl sollte &lt;B&gt;print dstr&lt;/B&gt; heißen.&lt;BR /&gt; &lt;BR /&gt; OK: Man kann keine Text-Variable in eine Zahl-Variable umwandeln. Das wird aber in jeder Programmiersprache schwierig, denn wie sollen den Buchstaben oder gar Sonderzeichen dann interpretiert werden. Andersrum ist es natürlich leicht. Eine Zahl kann jederzeit in einen Text umbenannt werden.&lt;BR /&gt; Nachdem ich mir vorstellen kann worauf sie hinaus wollen, habe ich meine grauen Gehirnzellen ein bisschen aktiviert und doch eine Möglichkeit gefunden einen Text in eine Zahl umzuwandeln. Hier ist der Code für eine 3-stellige Zahl:&lt;BR /&gt;  &amp;lt;/font&amp;gt;&amp;lt;blockquote&amp;gt;&amp;lt;font size="1" face="Verdana, Helvetica, sans-serif"&amp;gt;Code:&amp;lt;/font&amp;gt;&amp;lt;hr /&amp;gt;&amp;lt;pre style="font-size:x-small; font-family: monospace;"&amp;gt;for i=0 to 9&lt;BR /&gt; if strsub (tag, 1,1)=str (i,1,0) then hun=i&lt;BR /&gt; if strsub (tag, 2,1)=str (i,1,0) then zen=i&lt;BR /&gt; if strsub (tag, 3,1)=str (i,1,0) then ein=i&lt;BR /&gt; next i&lt;BR /&gt; dstr=hun*100+zen*10+ein&lt;BR /&gt; print dstrKurze Erklärung: die Routine holt sich die erste Stelle des Textes und vergleicht es mit dem "Zahltext" und nimmt bei Erfolg die Zahl. Auf diese Art wird alles ausser zahlen ignoriert.&lt;BR /&gt; Mit &lt;B&gt;dstr&lt;/B&gt; kann dann gerechnet werden.&lt;BR /&gt; Alles klar?</description>
      <pubDate>Mon, 06 May 2002 20:36:00 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532447#M18307</guid>
      <dc:creator>Bernhard Binder</dc:creator>
      <dc:date>2002-05-06T20:36:00Z</dc:date>
    </item>
    <item>
      <title>Re: GDL-Bug?</title>
      <link>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532448#M18308</link>
      <description>ich habe das Script noch etwas "verallgemeinert":&lt;BR /&gt;  &amp;lt;/font&amp;gt;&amp;lt;blockquote&amp;gt;&amp;lt;font size="1" face="Verdana, Helvetica, sans-serif"&amp;gt;Code:&amp;lt;/font&amp;gt;&amp;lt;hr /&amp;gt;&amp;lt;pre style="font-size:x-small; font-family: monospace;"&amp;gt;tag="12345"    !&amp;lt;- hier wird die Textvariable definiert&lt;BR /&gt; x=strlen(tag)  !&amp;lt;- Anzahl der Stellen der Zahl tag&lt;BR /&gt; dim zahl [100] !&amp;lt;- ist das Array, auf wieviele Stellen max. berechnet werden kann&lt;BR /&gt; 	       !   leider kann man in arrays keine Variablen verwenden &lt;!-- s:-( --&gt;&lt;span class="lia-unicode-emoji" title=":enttäuschtes_Gesicht:"&gt;😞&lt;/span&gt;&lt;!-- s:-( --&gt;&lt;BR /&gt; for i=0 to 9&lt;BR /&gt; for h=1 to strlen (tag)&lt;BR /&gt; if strsub (tag, h,1)=str (i,1,0) then &lt;BR /&gt; 	zahl[h]=i&lt;BR /&gt; 	dstr=dstr+zahl[h]*10^x/10&lt;BR /&gt; 	x=x-1&lt;BR /&gt; endif&lt;BR /&gt; next h&lt;BR /&gt; next i&lt;BR /&gt; print dstr	 !&amp;lt;- OK, gib die Zahl aus!;)</description>
      <pubDate>Mon, 06 May 2002 21:14:00 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532448#M18308</guid>
      <dc:creator>Bernhard Binder</dc:creator>
      <dc:date>2002-05-06T21:14:00Z</dc:date>
    </item>
    <item>
      <title>Re: GDL-Bug?</title>
      <link>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532449#M18309</link>
      <description>Danke für die Programmbeispiele - wirklich sehr lehrreich und hilfreich!&lt;BR /&gt; &lt;BR /&gt; Bei meinem Beispiel - da hab ich einen Fehler gemacht - natürlich hätte ich beim 2. Print-Befehl das dstr anzeigen sollen - aber darum gehts mir nicht!&lt;BR /&gt; &lt;BR /&gt; Mir gehts darum, daß eine Variable vom APi übernommen keine echte Flißkommazahl zu sein scheint. Es zeigt mir eben nicht das selbe Ergebnis! - Deshalb meine Vermutung - BUG</description>
      <pubDate>Tue, 07 May 2002 06:16:00 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532449#M18309</guid>
      <dc:creator>Hmooslechner</dc:creator>
      <dc:date>2002-05-07T06:16:00Z</dc:date>
    </item>
    <item>
      <title>Re: GDL-Bug?</title>
      <link>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532450#M18310</link>
      <description>Die Variable ist auch keine Zahl, sondern ein Text. Daher auch das Problem. &lt;BR /&gt; So gesehen ist es kein Bug in GDL, sondern eher ein "Bug" im GDL DateTime AddOn. &lt;BR /&gt; Obwohl, hier von einem Bug zu sprechen ist FALSCH. Das Datum wird halt in einem String, also einer Textvariable ausgelesen. Hat auch den Vorteil, verschiedene Formatierungen vornehmen zu können.&lt;BR /&gt; &lt;BR /&gt; In der Erklärung das GDL DateTime AddOns steht übrigens auch:&lt;BR /&gt; &lt;I&gt;Es liest einen Wert vom Typ &lt;B&gt;Zeichenfolge&lt;/B&gt; ein, der Datum und/oder Zeit in dem, durch die ÖFFNEN-Sequenz angegebenen Format repräsentiert.&lt;/I&gt;</description>
      <pubDate>Tue, 07 May 2002 09:20:00 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532450#M18310</guid>
      <dc:creator>Bernhard Binder</dc:creator>
      <dc:date>2002-05-07T09:20:00Z</dc:date>
    </item>
    <item>
      <title>Re: GDL-Bug?</title>
      <link>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532451#M18311</link>
      <description>Gut - verstanden - der Hilfetext ist da für mich einfach irreführend gewesen - Danke!</description>
      <pubDate>Tue, 07 May 2002 11:16:00 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532451#M18311</guid>
      <dc:creator>Hmooslechner</dc:creator>
      <dc:date>2002-05-07T11:16:00Z</dc:date>
    </item>
    <item>
      <title>Re: GDL-Bug?</title>
      <link>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532452#M18312</link>
      <description>irgendwie schaff ich das einfach nicht.&lt;BR /&gt; &lt;BR /&gt; Kopiert das doch einmal in ein neues GDL und probiert es aus - bei mir gehts einfach nicht.&lt;BR /&gt; &lt;BR /&gt;  &amp;lt;/font&amp;gt;&amp;lt;blockquote&amp;gt;&amp;lt;font size="1" face="Verdana, Helvetica, sans-serif"&amp;gt;Code:&amp;lt;/font&amp;gt;&amp;lt;hr /&amp;gt;&amp;lt;pre style="font-size:x-small; font-family: monospace;"&amp;gt; &lt;BR /&gt; &lt;BR /&gt; !!liest Datum aus&lt;BR /&gt; dstr= ""&lt;BR /&gt; ch = OPEN ("DateTime","","%j")  !liest Tag des Jahres aus&lt;BR /&gt;    n = INPUT (CH, "","",dstr)&lt;BR /&gt; Close (ch)&lt;BR /&gt; print dstr   !!!sB - gibt er hier "128" aus&lt;BR /&gt; &lt;BR /&gt; &lt;BR /&gt; !!!!!Vorschlag Hr. Binder&lt;BR /&gt; tag=dstr         !&amp;lt;- hier wird die Textvariable definiert (anstatt "123" nun dstr von oben...)&lt;BR /&gt; x=strlen(tag)    !&amp;lt;- Anzahl der Stellen der Zahl tag&lt;BR /&gt; dim zahl [100]   !&amp;lt;- ist das Array, auf wieviele Stellen max. berechnet werden kann&lt;BR /&gt; &lt;BR /&gt; for i=0 to 9&lt;BR /&gt; for h=1 to strlen (tag)&lt;BR /&gt; if strsub (tag, h,1)=str (i,1,0) then &lt;BR /&gt; 	zahl[h]=i&lt;BR /&gt; 	dstr=dstr+zahl[h]*10^x/10&lt;BR /&gt; 	x=x-1&lt;BR /&gt; endif&lt;BR /&gt; next h&lt;BR /&gt; next i&lt;BR /&gt; print dstr	 !&amp;lt;- OK, gib die Zahl aus!&lt;BR /&gt; !!!!!Ende Vorschlag Hr. Binder&lt;BR /&gt; &lt;BR /&gt;  Das dstr nach der API-Übergabe ist bei mir weder ein String noch eine Zahl. mit print gibt er zwar heute "128" aus, aber&lt;BR /&gt; wenn ichs mit:&lt;BR /&gt; tag=str(dstr, 3, 0) &lt;BR /&gt; in einen String umwandeln will - Fehlermeldung , da es sich nicht um eine Zahl handelt&lt;BR /&gt; aber ein String ist es auch nicht, denn&lt;BR /&gt; bei der Prüfung des GDL meckert Archicad:&lt;BR /&gt; "String(Text)-Variable erforderlich bei Zeile...".&lt;BR /&gt; (bei strlen)&lt;BR /&gt; Was nun?  &lt;!-- s:eek: --&gt;&lt;span class="lia-unicode-emoji" title=":Gesicht_mit_offenem_Mund:"&gt;😮&lt;/span&gt;&lt;!-- s:eek: --&gt;</description>
      <pubDate>Wed, 08 May 2002 08:07:00 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532452#M18312</guid>
      <dc:creator>Hmooslechner</dc:creator>
      <dc:date>2002-05-08T08:07:00Z</dc:date>
    </item>
    <item>
      <title>Re: GDL-Bug?</title>
      <link>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532453#M18313</link>
      <description>Ich habe das Problem schon gefunden! GDL-Buch Seite 195/196:&lt;BR /&gt; Der Typ der Variablen nach einem Input Befehl wird während der kompilierung nicht mehr geprüft.&lt;BR /&gt; Dadurch "vergisst" die Funktion &lt;I&gt;Script prüfen&lt;/I&gt; welcher Typ das nun ist. Beim Ausführen weiss es das Script aber dann.&lt;BR /&gt; Ich habe jetzt einen kleinen Trick eingebaut, damit die Funktion &lt;I&gt;Script prüfen&lt;/I&gt; getäuscht wird. die Länge der Variable soll nur dann ausgelesen werden, wenn die Variable eine String-Variable ist. Das geht mit dem Befehl &lt;B&gt;vartype&lt;/B&gt; &lt;BR /&gt; Hier das Script:&lt;BR /&gt;  &amp;lt;/font&amp;gt;&amp;lt;blockquote&amp;gt;&amp;lt;font size="1" face="Verdana, Helvetica, sans-serif"&amp;gt;Code:&amp;lt;/font&amp;gt;&amp;lt;hr /&amp;gt;&amp;lt;pre style="font-size:x-small; font-family: monospace;"&amp;gt;!!liest Datum aus&lt;BR /&gt; dstr= ""&lt;BR /&gt; ch = OPEN ("DateTime","","%j") !liest Tag des Jahres aus&lt;BR /&gt; n = INPUT (CH, "","",dstr)&lt;BR /&gt; Close (ch)&lt;BR /&gt; print dstr !!!sB - gibt er hier "128" aus&lt;BR /&gt; &lt;BR /&gt; &lt;BR /&gt; !!!!!Vorschlag Hr. Binder&lt;BR /&gt; tag=dstr !&amp;lt;- hier wird die Textvariable definiert (anstatt "123" nun dstr von oben...)&lt;BR /&gt;   dstr=0 	 !&amp;lt;- Definiert dstr als numerischen Variablentyp&lt;BR /&gt;   if vartype (tag)=2 then x=strlen(tag) !&amp;lt;- Anzahl der Stellen der Zahl tag&lt;BR /&gt;   y=x		 !&amp;lt;- wird für die Schleife gebraucht&lt;BR /&gt; dim zahl [100] !&amp;lt;- ist das Array, auf wieviele Stellen max. berechnet werden kann&lt;BR /&gt; for i=0 to 9&lt;BR /&gt;   for h=1 to y&lt;BR /&gt; if strsub (tag, h,1)=str (i,1,0) then &lt;BR /&gt; zahl[h]=i&lt;BR /&gt; dstr=dstr+zahl[h]*10^x/10&lt;BR /&gt; x=x-1&lt;BR /&gt; endif&lt;BR /&gt; next h&lt;BR /&gt; next i&lt;BR /&gt; print dstr !&amp;lt;- OK, gib die Zahl aus!&lt;BR /&gt; !!!!!Ende Vorschlag Hr. Binder</description>
      <pubDate>Wed, 08 May 2002 11:01:00 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532453#M18313</guid>
      <dc:creator>Bernhard Binder</dc:creator>
      <dc:date>2002-05-08T11:01:00Z</dc:date>
    </item>
    <item>
      <title>Re: GDL-Bug?</title>
      <link>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532454#M18314</link>
      <description>Danke - nun flutschts!  :yeah:</description>
      <pubDate>Wed, 08 May 2002 11:08:00 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532454#M18314</guid>
      <dc:creator>Hmooslechner</dc:creator>
      <dc:date>2002-05-08T11:08:00Z</dc:date>
    </item>
    <item>
      <title>Re: GDL-Bug?</title>
      <link>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532455#M18315</link>
      <description>So - was kann man mit dem Teil tun?&lt;BR /&gt; &lt;BR /&gt; Einen sanften Hinweis auf eine abgelaufene Nutzungsberechtigung zB..&lt;BR /&gt; &lt;BR /&gt;  &amp;lt;/font&amp;gt;&amp;lt;blockquote&amp;gt;&amp;lt;font size="1" face="Verdana, Helvetica, sans-serif"&amp;gt;Code:&amp;lt;/font&amp;gt;&amp;lt;hr /&amp;gt;&amp;lt;pre style="font-size:x-small; font-family: monospace;"&amp;gt; circle2 0,0,2  !Dummy&lt;BR /&gt; !!liest Datum aus&lt;BR /&gt; dstr= ""&lt;BR /&gt; ch = OPEN ("DateTime","","%j") !liest Tag des Jahres aus&lt;BR /&gt; n = INPUT (CH, "","",dstr)&lt;BR /&gt; Close (ch)&lt;BR /&gt; &lt;BR /&gt; !!!!!Vorschlag Hr. Binder&lt;BR /&gt; tag=dstr !&amp;lt;- hier wird die Textvariable definiert (anstatt "123" nun dstr von oben...)&lt;BR /&gt;   dstr=0 	 !&amp;lt;- Definiert dstr als numerischen Variablentyp&lt;BR /&gt;   if vartype (tag)=2 then x=strlen(tag) !&amp;lt;- Anzahl der Stellen der Zahl tag&lt;BR /&gt;   y=x		 !&amp;lt;- wird für die Schleife gebraucht&lt;BR /&gt; dim zahl [100] !&amp;lt;- ist das Array, auf wieviele Stellen max. berechnet werden kann&lt;BR /&gt; for i=0 to 9&lt;BR /&gt;   for h=1 to y&lt;BR /&gt; if strsub (tag, h,1)=str (i,1,0) then &lt;BR /&gt; zahl[h]=i&lt;BR /&gt; dstr=dstr+zahl[h]*10^x/10&lt;BR /&gt; x=x-1&lt;BR /&gt; endif&lt;BR /&gt; next h&lt;BR /&gt; next i&lt;BR /&gt; !!!!!Ende Vorschlag Hr. Binder&lt;BR /&gt; &lt;BR /&gt; !endatum=150 !!als Beispiel&lt;BR /&gt; &lt;BR /&gt; if dstr&amp;gt;endatum then &lt;BR /&gt; oberhalb=str((dstr-endatum), 3,0)&lt;BR /&gt; dstr=str(dstr, 3,0)&lt;BR /&gt; print"Sharewaredatum abgelaufen! melden Sie sich bei &lt;!-- e --&gt;&lt;A href="mailto:hmooslechner@gmx.at"&gt;hmooslechner@gmx.at&lt;/A&gt;&lt;!-- e --&gt; oder schicken Sie per Scheck 20Euro an mich!"&lt;BR /&gt; text2 0,0, "heute = der " + dstr + ". Tag des Jahres und die Nutzungsberechtigung ist um " + oberhalb + "überschritten" !gemein-aber wirkungsvoll.. &lt;!-- s:) --&gt;&lt;span class="lia-unicode-emoji" title=":leicht_lächelndes_Gesicht:"&gt;🙂&lt;/span&gt;&lt;!-- s:) --&gt;&lt;BR /&gt; else&lt;BR /&gt; endif Bei überschreiten von "endatum" schreit das GDL.&lt;BR /&gt; Natürlich kann ein GDL-Nutzer diesen Teil rausschmeißen, aber so als Erinnerung nicht schlecht - oder?&lt;BR /&gt; &lt;BR /&gt; mit  &amp;lt;/font&amp;gt;&amp;lt;blockquote&amp;gt;&amp;lt;font size="1" face="Verdana, Helvetica, sans-serif"&amp;gt;Code:&amp;lt;/font&amp;gt;&amp;lt;hr /&amp;gt;&amp;lt;pre style="font-size:x-small; font-family: monospace;"&amp;gt; dongl=REQ ("Serial_number") !!liest Dongelnummer aus könnte man da noch weiter gehen.&lt;BR /&gt; &lt;BR /&gt; Mit Code-Scrambling wäre es für 95% der Nutzer unknackbar..  &lt;!-- s;) --&gt;&lt;span class="lia-unicode-emoji" title=":zwinkerndes_Gesicht:"&gt;😉&lt;/span&gt;&lt;!-- s;) --&gt;</description>
      <pubDate>Wed, 08 May 2002 12:15:00 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532455#M18315</guid>
      <dc:creator>Hmooslechner</dc:creator>
      <dc:date>2002-05-08T12:15:00Z</dc:date>
    </item>
    <item>
      <title>Re: GDL-Bug?</title>
      <link>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532456#M18316</link>
      <description>Ich weiß, daß es einen Code-scrambler für Archicad gibt. Einige Kauf-Teile sperren manchmal Scripttexte in Archicad - wo bekommt man so was?</description>
      <pubDate>Wed, 08 May 2002 12:17:00 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Dokumentation/GDL-Bug/m-p/532456#M18316</guid>
      <dc:creator>Hmooslechner</dc:creator>
      <dc:date>2002-05-08T12:17:00Z</dc:date>
    </item>
  </channel>
</rss>

