<?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>topic Filtering SSet for XData problem in VBA Forum</title>
    <link>https://forums.autodesk.com/t5/vba-forum/filtering-sset-for-xdata-problem/m-p/942846#M57284</link>
    <description>Here's what I can't figure out - how do I filter SSet for, say, partial
string "*John*" if I have an XData structure like this:

Type: 1001    Data: "MYAPP"
Type: 1002    Data: "{"
Type: 1000    Data: "John"
Type: 1000    Data: "Wayne"
Type: 1002    Data: "}"

I tried with SelSet filters:

DataType(0) = 1001: DataString(0) = "MYAPP"
DataType(1) = 1000: DataString(1) = "*John*"

but it doesn't work. Many thanks for any tip regarding the problem.

Maksim Sestic</description>
    <pubDate>Sat, 31 Jan 2004 11:31:27 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2004-01-31T11:31:27Z</dc:date>
    <item>
      <title>Filtering SSet for XData problem</title>
      <link>https://forums.autodesk.com/t5/vba-forum/filtering-sset-for-xdata-problem/m-p/942846#M57284</link>
      <description>Here's what I can't figure out - how do I filter SSet for, say, partial
string "*John*" if I have an XData structure like this:

Type: 1001    Data: "MYAPP"
Type: 1002    Data: "{"
Type: 1000    Data: "John"
Type: 1000    Data: "Wayne"
Type: 1002    Data: "}"

I tried with SelSet filters:

DataType(0) = 1001: DataString(0) = "MYAPP"
DataType(1) = 1000: DataString(1) = "*John*"

but it doesn't work. Many thanks for any tip regarding the problem.

Maksim Sestic</description>
      <pubDate>Sat, 31 Jan 2004 11:31:27 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vba-forum/filtering-sset-for-xdata-problem/m-p/942846#M57284</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2004-01-31T11:31:27Z</dc:date>
    </item>
    <item>
      <title>Re: Filtering SSet for XData problem</title>
      <link>https://forums.autodesk.com/t5/vba-forum/filtering-sset-for-xdata-problem/m-p/942847#M57285</link>
      <description>Hi...&lt;BR /&gt;
&lt;BR /&gt;
Try this...&lt;BR /&gt;
&lt;BR /&gt;
Private Sub SelXdata()&lt;BR /&gt;
    Dim tipoXdatoOut As Variant&lt;BR /&gt;
    Dim valorXtipoOut As Variant&lt;BR /&gt;
    Dim objEntidad As AcadEntity&lt;BR /&gt;
    Dim sSeleccion As AcadSelectionSet&lt;BR /&gt;
    Dim cSeleccion As AcadSelectionSets&lt;BR /&gt;
    Dim vCodigo As Variant&lt;BR /&gt;
    Dim vEntidad As Variant&lt;BR /&gt;
    Dim codigo(0) As Integer&lt;BR /&gt;
    Dim entidad(0) As Variant&lt;BR /&gt;
&lt;BR /&gt;
AppActivate autocadApp.Caption&lt;BR /&gt;
    Set cSeleccion = autocadApp.ActiveDocument.SelectionSets&lt;BR /&gt;
&lt;BR /&gt;
    For Each sSeleccion In cSeleccion&lt;BR /&gt;
        If sSeleccion.Name = "SS" Then&lt;BR /&gt;
           sSeleccion.Delete&lt;BR /&gt;
            Exit For&lt;BR /&gt;
        End If&lt;BR /&gt;
    Next&lt;BR /&gt;
    Set sSeleccion = cSeleccion.Add("SS")&lt;BR /&gt;
    codigo(0) = 1001&lt;BR /&gt;
    entidad(0) = "MYAPP"&lt;BR /&gt;
    vCodigo = codigo&lt;BR /&gt;
    vEntidad = entidad&lt;BR /&gt;
    sSeleccion.Select acSelectionSetAll, , , vCodigo, vEntidad&lt;BR /&gt;
    For Each objEntidad In sSeleccion&lt;BR /&gt;
        objEntidad.GetXData "MYAPP", tipoXdatoOut, valorXtipoOut&lt;BR /&gt;
        If valorXtipoOut(1) = "John" Then&lt;BR /&gt;
            objEntidad.Color = acBlue&lt;BR /&gt;
            objEntidad.Highlight True&lt;BR /&gt;
        End If&lt;BR /&gt;
    Next objEntidad&lt;BR /&gt;
End Sub&lt;BR /&gt;
&lt;BR /&gt;
Un saludo de SpeedCAD... &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;BR /&gt;
CHILE&lt;BR /&gt;
FORO: http://www.hispacad.com/foro</description>
      <pubDate>Sat, 31 Jan 2004 16:06:00 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vba-forum/filtering-sset-for-xdata-problem/m-p/942847#M57285</guid>
      <dc:creator>Speed_CAD</dc:creator>
      <dc:date>2004-01-31T16:06:00Z</dc:date>
    </item>
    <item>
      <title>Re: Filtering SSet for XData problem</title>
      <link>https://forums.autodesk.com/t5/vba-forum/filtering-sset-for-xdata-problem/m-p/942848#M57286</link>
      <description>Thanks SpeedCAD, but this is the approach I've already implemented. I was
rather wandering if it's possible to implement filtering on both
1001="MYAPP" and 1000="*John*" simultaneously. Autodesk documentation says
that codes 1000+ are "not maintained by AutoCAD"... whatever this means, but
still can't figure out why I just can't filter on DXF code 1001...

Regards,
Maksim Sestic

"SpeedCAD" &lt;NOSPAM&gt; wrote in message
news:31940764.1075565195881.JavaMail.jive@jiveforum2.autodesk.com...
&amp;gt; Hi...
&amp;gt;
&amp;gt; Try this...
&amp;gt;
&amp;gt; Private Sub SelXdata()
&amp;gt;     Dim tipoXdatoOut As Variant
&amp;gt;     Dim valorXtipoOut As Variant
&amp;gt;     Dim objEntidad As AcadEntity
&amp;gt;     Dim sSeleccion As AcadSelectionSet
&amp;gt;     Dim cSeleccion As AcadSelectionSets
&amp;gt;     Dim vCodigo As Variant
&amp;gt;     Dim vEntidad As Variant
&amp;gt;     Dim codigo(0) As Integer
&amp;gt;     Dim entidad(0) As Variant
&amp;gt;
&amp;gt; AppActivate autocadApp.Caption
&amp;gt;     Set cSeleccion = autocadApp.ActiveDocument.SelectionSets
&amp;gt;
&amp;gt;     For Each sSeleccion In cSeleccion
&amp;gt;         If sSeleccion.Name = "SS" Then
&amp;gt;            sSeleccion.Delete
&amp;gt;             Exit For
&amp;gt;         End If
&amp;gt;     Next
&amp;gt;     Set sSeleccion = cSeleccion.Add("SS")
&amp;gt;     codigo(0) = 1001
&amp;gt;     entidad(0) = "MYAPP"
&amp;gt;     vCodigo = codigo
&amp;gt;     vEntidad = entidad
&amp;gt;     sSeleccion.Select acSelectionSetAll, , , vCodigo, vEntidad
&amp;gt;     For Each objEntidad In sSeleccion
&amp;gt;         objEntidad.GetXData "MYAPP", tipoXdatoOut, valorXtipoOut
&amp;gt;         If valorXtipoOut(1) = "John" Then
&amp;gt;             objEntidad.Color = acBlue
&amp;gt;             objEntidad.Highlight True
&amp;gt;         End If
&amp;gt;     Next objEntidad
&amp;gt; End Sub
&amp;gt;
&amp;gt; Un saludo de SpeedCAD... :)
&amp;gt; CHILE
&amp;gt; FORO: http://www.hispacad.com/foro&lt;/NOSPAM&gt;</description>
      <pubDate>Sat, 31 Jan 2004 16:55:36 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vba-forum/filtering-sset-for-xdata-problem/m-p/942848#M57286</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2004-01-31T16:55:36Z</dc:date>
    </item>
    <item>
      <title>Re: Filtering SSet for XData problem</title>
      <link>https://forums.autodesk.com/t5/vba-forum/filtering-sset-for-xdata-problem/m-p/942849#M57287</link>
      <description>Straight from the developer's guide....
The ssget function recognizes all group codes except entity names
(group -1), handles (group 5), and xdata codes (groups greater than 1000).
If an invalid group code is used in a filter-list, it is ignored by ssget.
To search for objects with xdata, use the -3 code as described in Filtering
for Extended Data

HTH,
Jeff

"Maksim Sestic" &lt;OFFICE&gt; wrote in message
news:401bde81_3@newsprd01...
&amp;gt; Thanks SpeedCAD, but this is the approach I've already implemented. I was
&amp;gt; rather wandering if it's possible to implement filtering on both
&amp;gt; 1001="MYAPP" and 1000="*John*" simultaneously. Autodesk documentation says
&amp;gt; that codes 1000+ are "not maintained by AutoCAD"... whatever this means,
but
&amp;gt; still can't figure out why I just can't filter on DXF code 1001...
&amp;gt;
&amp;gt; Regards,
&amp;gt; Maksim Sestic
&amp;gt;
&amp;gt; "SpeedCAD" &lt;NOSPAM&gt; wrote in message
&amp;gt; news:31940764.1075565195881.JavaMail.jive@jiveforum2.autodesk.com...
&amp;gt; &amp;gt; Hi...
&amp;gt; &amp;gt;
&amp;gt; &amp;gt; Try this...
&amp;gt; &amp;gt;
&amp;gt; &amp;gt; Private Sub SelXdata()
&amp;gt; &amp;gt;     Dim tipoXdatoOut As Variant
&amp;gt; &amp;gt;     Dim valorXtipoOut As Variant
&amp;gt; &amp;gt;     Dim objEntidad As AcadEntity
&amp;gt; &amp;gt;     Dim sSeleccion As AcadSelectionSet
&amp;gt; &amp;gt;     Dim cSeleccion As AcadSelectionSets
&amp;gt; &amp;gt;     Dim vCodigo As Variant
&amp;gt; &amp;gt;     Dim vEntidad As Variant
&amp;gt; &amp;gt;     Dim codigo(0) As Integer
&amp;gt; &amp;gt;     Dim entidad(0) As Variant
&amp;gt; &amp;gt;
&amp;gt; &amp;gt; AppActivate autocadApp.Caption
&amp;gt; &amp;gt;     Set cSeleccion = autocadApp.ActiveDocument.SelectionSets
&amp;gt; &amp;gt;
&amp;gt; &amp;gt;     For Each sSeleccion In cSeleccion
&amp;gt; &amp;gt;         If sSeleccion.Name = "SS" Then
&amp;gt; &amp;gt;            sSeleccion.Delete
&amp;gt; &amp;gt;             Exit For
&amp;gt; &amp;gt;         End If
&amp;gt; &amp;gt;     Next
&amp;gt; &amp;gt;     Set sSeleccion = cSeleccion.Add("SS")
&amp;gt; &amp;gt;     codigo(0) = 1001
&amp;gt; &amp;gt;     entidad(0) = "MYAPP"
&amp;gt; &amp;gt;     vCodigo = codigo
&amp;gt; &amp;gt;     vEntidad = entidad
&amp;gt; &amp;gt;     sSeleccion.Select acSelectionSetAll, , , vCodigo, vEntidad
&amp;gt; &amp;gt;     For Each objEntidad In sSeleccion
&amp;gt; &amp;gt;         objEntidad.GetXData "MYAPP", tipoXdatoOut, valorXtipoOut
&amp;gt; &amp;gt;         If valorXtipoOut(1) = "John" Then
&amp;gt; &amp;gt;             objEntidad.Color = acBlue
&amp;gt; &amp;gt;             objEntidad.Highlight True
&amp;gt; &amp;gt;         End If
&amp;gt; &amp;gt;     Next objEntidad
&amp;gt; &amp;gt; End Sub
&amp;gt; &amp;gt;
&amp;gt; &amp;gt; Un saludo de SpeedCAD... :)
&amp;gt; &amp;gt; CHILE
&amp;gt; &amp;gt; FORO: http://www.hispacad.com/foro
&amp;gt;
&amp;gt;&lt;/NOSPAM&gt;&lt;/OFFICE&gt;</description>
      <pubDate>Sat, 31 Jan 2004 17:10:07 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vba-forum/filtering-sset-for-xdata-problem/m-p/942849#M57287</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2004-01-31T17:10:07Z</dc:date>
    </item>
    <item>
      <title>Re: Filtering SSet for XData problem</title>
      <link>https://forums.autodesk.com/t5/vba-forum/filtering-sset-for-xdata-problem/m-p/942850#M57288</link>
      <description>Hi Maksim Sestic...&lt;BR /&gt;
&lt;BR /&gt;
That it not possible, only you can filter with code 1001 (App name). But the example that I write for you works fine.&lt;BR /&gt;
&lt;BR /&gt;
Un saludo de SpeedCAD... &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;BR /&gt;
CHILE&lt;BR /&gt;
FORO: http://www.hispacad.com/foro</description>
      <pubDate>Sat, 31 Jan 2004 18:53:46 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vba-forum/filtering-sset-for-xdata-problem/m-p/942850#M57288</guid>
      <dc:creator>Speed_CAD</dc:creator>
      <dc:date>2004-01-31T18:53:46Z</dc:date>
    </item>
    <item>
      <title>Re: Filtering SSet for XData problem</title>
      <link>https://forums.autodesk.com/t5/vba-forum/filtering-sset-for-xdata-problem/m-p/942851#M57289</link>
      <description>What I would like to see is code that returns a secondary selection set
AFTER the initial Xdata selection set is processed.  Doable?


-- 
FrankZander

Powerfull the dark side is.
------------------------------------------------------------------------
FrankZander's Profile: http://www.vbdesign.net/expresso/member.php?action=getinfo&amp;amp;userid=447
View this thread: http://www.vbdesign.net/expresso/showthread.php?threadid=25545</description>
      <pubDate>Sat, 31 Jan 2004 19:55:33 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vba-forum/filtering-sset-for-xdata-problem/m-p/942851#M57289</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2004-01-31T19:55:33Z</dc:date>
    </item>
    <item>
      <title>Re: Filtering SSet for XData problem</title>
      <link>https://forums.autodesk.com/t5/vba-forum/filtering-sset-for-xdata-problem/m-p/942852#M57290</link>
      <description>Wow, -3? I'll have to look through docs more carefully...

Thanks,
Maksim Sestic

"Jeff Mishler" &lt;MIFF&gt; wrote in message
news:401be152_2@newsprd01...
&amp;gt; Straight from the developer's guide....
&amp;gt; The ssget function recognizes all group codes except entity names
&amp;gt; (group -1), handles (group 5), and xdata codes (groups greater than 1000).
&amp;gt; If an invalid group code is used in a filter-list, it is ignored by ssget.
&amp;gt; To search for objects with xdata, use the -3 code as described in
Filtering
&amp;gt; for Extended Data
&amp;gt;
&amp;gt; HTH,
&amp;gt; Jeff
&amp;gt;
&amp;gt; "Maksim Sestic" &lt;OFFICE&gt; wrote in message
&amp;gt; news:401bde81_3@newsprd01...
&amp;gt; &amp;gt; Thanks SpeedCAD, but this is the approach I've already implemented. I
was
&amp;gt; &amp;gt; rather wandering if it's possible to implement filtering on both
&amp;gt; &amp;gt; 1001="MYAPP" and 1000="*John*" simultaneously. Autodesk documentation
says
&amp;gt; &amp;gt; that codes 1000+ are "not maintained by AutoCAD"... whatever this means,
&amp;gt; but
&amp;gt; &amp;gt; still can't figure out why I just can't filter on DXF code 1001...
&amp;gt; &amp;gt;
&amp;gt; &amp;gt; Regards,
&amp;gt; &amp;gt; Maksim Sestic
&amp;gt; &amp;gt;
&amp;gt; &amp;gt; "SpeedCAD" &lt;NOSPAM&gt; wrote in message
&amp;gt; &amp;gt; news:31940764.1075565195881.JavaMail.jive@jiveforum2.autodesk.com...
&amp;gt; &amp;gt; &amp;gt; Hi...
&amp;gt; &amp;gt; &amp;gt;
&amp;gt; &amp;gt; &amp;gt; Try this...
&amp;gt; &amp;gt; &amp;gt;
&amp;gt; &amp;gt; &amp;gt; Private Sub SelXdata()
&amp;gt; &amp;gt; &amp;gt;     Dim tipoXdatoOut As Variant
&amp;gt; &amp;gt; &amp;gt;     Dim valorXtipoOut As Variant
&amp;gt; &amp;gt; &amp;gt;     Dim objEntidad As AcadEntity
&amp;gt; &amp;gt; &amp;gt;     Dim sSeleccion As AcadSelectionSet
&amp;gt; &amp;gt; &amp;gt;     Dim cSeleccion As AcadSelectionSets
&amp;gt; &amp;gt; &amp;gt;     Dim vCodigo As Variant
&amp;gt; &amp;gt; &amp;gt;     Dim vEntidad As Variant
&amp;gt; &amp;gt; &amp;gt;     Dim codigo(0) As Integer
&amp;gt; &amp;gt; &amp;gt;     Dim entidad(0) As Variant
&amp;gt; &amp;gt; &amp;gt;
&amp;gt; &amp;gt; &amp;gt; AppActivate autocadApp.Caption
&amp;gt; &amp;gt; &amp;gt;     Set cSeleccion = autocadApp.ActiveDocument.SelectionSets
&amp;gt; &amp;gt; &amp;gt;
&amp;gt; &amp;gt; &amp;gt;     For Each sSeleccion In cSeleccion
&amp;gt; &amp;gt; &amp;gt;         If sSeleccion.Name = "SS" Then
&amp;gt; &amp;gt; &amp;gt;            sSeleccion.Delete
&amp;gt; &amp;gt; &amp;gt;             Exit For
&amp;gt; &amp;gt; &amp;gt;         End If
&amp;gt; &amp;gt; &amp;gt;     Next
&amp;gt; &amp;gt; &amp;gt;     Set sSeleccion = cSeleccion.Add("SS")
&amp;gt; &amp;gt; &amp;gt;     codigo(0) = 1001
&amp;gt; &amp;gt; &amp;gt;     entidad(0) = "MYAPP"
&amp;gt; &amp;gt; &amp;gt;     vCodigo = codigo
&amp;gt; &amp;gt; &amp;gt;     vEntidad = entidad
&amp;gt; &amp;gt; &amp;gt;     sSeleccion.Select acSelectionSetAll, , , vCodigo, vEntidad
&amp;gt; &amp;gt; &amp;gt;     For Each objEntidad In sSeleccion
&amp;gt; &amp;gt; &amp;gt;         objEntidad.GetXData "MYAPP", tipoXdatoOut, valorXtipoOut
&amp;gt; &amp;gt; &amp;gt;         If valorXtipoOut(1) = "John" Then
&amp;gt; &amp;gt; &amp;gt;             objEntidad.Color = acBlue
&amp;gt; &amp;gt; &amp;gt;             objEntidad.Highlight True
&amp;gt; &amp;gt; &amp;gt;         End If
&amp;gt; &amp;gt; &amp;gt;     Next objEntidad
&amp;gt; &amp;gt; &amp;gt; End Sub
&amp;gt; &amp;gt; &amp;gt;
&amp;gt; &amp;gt; &amp;gt; Un saludo de SpeedCAD... :)
&amp;gt; &amp;gt; &amp;gt; CHILE
&amp;gt; &amp;gt; &amp;gt; FORO: http://www.hispacad.com/foro
&amp;gt; &amp;gt;
&amp;gt; &amp;gt;
&amp;gt;
&amp;gt;&lt;/NOSPAM&gt;&lt;/OFFICE&gt;&lt;/MIFF&gt;</description>
      <pubDate>Sun, 01 Feb 2004 17:03:13 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vba-forum/filtering-sset-for-xdata-problem/m-p/942852#M57290</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2004-02-01T17:03:13Z</dc:date>
    </item>
    <item>
      <title>Re: Filtering SSet for XData problem</title>
      <link>https://forums.autodesk.com/t5/vba-forum/filtering-sset-for-xdata-problem/m-p/942853#M57291</link>
      <description>Doable, but hardly in only one pass... First selection set you get
immediatelly after filtering, and second one you create by filtering again
the first selset. Something in a form of function like:

Function SecondFilter(FirstSelectionSet as AcadSelectionSet, SecondSetType
as Variant, SecondSetData as Variant) as AcadSelectionSet

"FrankZander" &lt;FRANKZANDER.10WWFA&gt; wrote in message
news:FrankZander.10wwfa@vbdesign.net...
&amp;gt;
&amp;gt; What I would like to see is code that returns a secondary selection set
&amp;gt; AFTER the initial Xdata selection set is processed.  Doable?
&amp;gt;
&amp;gt;
&amp;gt; --
&amp;gt; FrankZander
&amp;gt;
&amp;gt; Powerfull the dark side is.
&amp;gt; ------------------------------------------------------------------------
&amp;gt; FrankZander's Profile:
http://www.vbdesign.net/expresso/member.php?action=getinfo&amp;amp;userid=447
&amp;gt; View this thread:
http://www.vbdesign.net/expresso/showthread.php?threadid=25545
&amp;gt;&lt;/FRANKZANDER.10WWFA&gt;</description>
      <pubDate>Sun, 01 Feb 2004 17:07:53 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vba-forum/filtering-sset-for-xdata-problem/m-p/942853#M57291</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2004-02-01T17:07:53Z</dc:date>
    </item>
  </channel>
</rss>

