<?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 Blocks Vs. Groups in VBA Forum</title>
    <link>https://forums.autodesk.com/t5/vba-forum/blocks-vs-groups/m-p/337762#M98870</link>
    <description>Hey VBA group,&lt;BR /&gt;
I am writing a design for a customer and am making the following&lt;BR /&gt;
assumptions, I was hoping that they can be validated by this news group,&lt;BR /&gt;
also I have some questions:&lt;BR /&gt;
&lt;BR /&gt;
Assumptions I am making&lt;BR /&gt;
====================&lt;BR /&gt;
&lt;BR /&gt;
Blocks are permanent (stored in the file)&lt;BR /&gt;
&lt;BR /&gt;
Groups are permanent (stored in the file)&lt;BR /&gt;
&lt;BR /&gt;
A block can be contained in other blocks, model or paper space&lt;BR /&gt;
&lt;BR /&gt;
A block can contain any number of groups but a group cannot contain a block&lt;BR /&gt;
&lt;BR /&gt;
Certain operations on a group are applied to all entities of that group such&lt;BR /&gt;
as .erase, this cannot be achived with blocks where entities are manipulated&lt;BR /&gt;
one at a time.&lt;BR /&gt;
&lt;BR /&gt;
What I am developing&lt;BR /&gt;
=================&lt;BR /&gt;
=================&lt;BR /&gt;
&lt;BR /&gt;
Now based on these assumptions, I am doing the following....&lt;BR /&gt;
&lt;BR /&gt;
I am building a data structure which is a combination of volatile vs&lt;BR /&gt;
permanent elements to store a dynamic table (ie. editable by the users) -&lt;BR /&gt;
the table is being used to store a bill of materials list for manufacturing&lt;BR /&gt;
assemblies.  If you don't know what a bill of materials list is, its a list&lt;BR /&gt;
of components used to make an assembly structure:&lt;BR /&gt;
&lt;BR /&gt;
The user will see something like this:&lt;BR /&gt;
&lt;BR /&gt;
BOM ID  | Prt #         |  Description&lt;BR /&gt;
100         | Part 55     | This is a screw&lt;BR /&gt;
101         | Part 888   | This is a harness&lt;BR /&gt;
200         | Part 999   | Steel 5 x 2 x 2&lt;BR /&gt;
&lt;BR /&gt;
etc.&lt;BR /&gt;
&lt;BR /&gt;
The way that this will work is as follows, permanently in the file will be&lt;BR /&gt;
&lt;BR /&gt;
Non volatile data entities&lt;BR /&gt;
===================&lt;BR /&gt;
&lt;BR /&gt;
a. A block (the table the user can edit)&lt;BR /&gt;
&lt;BR /&gt;
b. The block contains a set of groups (one group for each row of the table)&lt;BR /&gt;
&lt;BR /&gt;
c. Each group contains a set of attributes (the columns (tagString) and&lt;BR /&gt;
their values (textString) )&lt;BR /&gt;
&lt;BR /&gt;
d. The actual graphical elements for the table which are box entities are&lt;BR /&gt;
just stored with the block, and regenerated each time the table is modified.&lt;BR /&gt;
&lt;BR /&gt;
e. There will also be some meta-attributes which are just added to the block&lt;BR /&gt;
&lt;BR /&gt;
f. There will also be some column headers, which are just more graphical&lt;BR /&gt;
elements attached to the block&lt;BR /&gt;
&lt;BR /&gt;
Volatile Data Entities&lt;BR /&gt;
===============&lt;BR /&gt;
&lt;BR /&gt;
When the program is loaded the following will be instantiated into memory:&lt;BR /&gt;
&lt;BR /&gt;
a. An object which represents the table as a whole.&lt;BR /&gt;
b. The object contains a collection of the groups, remember the groups will&lt;BR /&gt;
represent the tables rows.&lt;BR /&gt;
c. The object also contains a collection of the meta attributes, referenced&lt;BR /&gt;
by their tag name.&lt;BR /&gt;
&lt;BR /&gt;
Does this data structure sound reasonable?&lt;BR /&gt;
&lt;BR /&gt;
Also I have two further questions:&lt;BR /&gt;
=========================&lt;BR /&gt;
&lt;BR /&gt;
1.  By adding an attribute to a group, the group being attached to a block,&lt;BR /&gt;
does that attribute automatically get added to the block?&lt;BR /&gt;
&lt;BR /&gt;
2. Do all of the selection set methods work with groups?&lt;BR /&gt;
&lt;BR /&gt;
Any help would be extremely appreciated,&lt;BR /&gt;
&lt;BR /&gt;
Dave</description>
    <pubDate>Mon, 18 Oct 1999 04:33:45 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>1999-10-18T04:33:45Z</dc:date>
    <item>
      <title>Blocks Vs. Groups</title>
      <link>https://forums.autodesk.com/t5/vba-forum/blocks-vs-groups/m-p/337762#M98870</link>
      <description>Hey VBA group,&lt;BR /&gt;
I am writing a design for a customer and am making the following&lt;BR /&gt;
assumptions, I was hoping that they can be validated by this news group,&lt;BR /&gt;
also I have some questions:&lt;BR /&gt;
&lt;BR /&gt;
Assumptions I am making&lt;BR /&gt;
====================&lt;BR /&gt;
&lt;BR /&gt;
Blocks are permanent (stored in the file)&lt;BR /&gt;
&lt;BR /&gt;
Groups are permanent (stored in the file)&lt;BR /&gt;
&lt;BR /&gt;
A block can be contained in other blocks, model or paper space&lt;BR /&gt;
&lt;BR /&gt;
A block can contain any number of groups but a group cannot contain a block&lt;BR /&gt;
&lt;BR /&gt;
Certain operations on a group are applied to all entities of that group such&lt;BR /&gt;
as .erase, this cannot be achived with blocks where entities are manipulated&lt;BR /&gt;
one at a time.&lt;BR /&gt;
&lt;BR /&gt;
What I am developing&lt;BR /&gt;
=================&lt;BR /&gt;
=================&lt;BR /&gt;
&lt;BR /&gt;
Now based on these assumptions, I am doing the following....&lt;BR /&gt;
&lt;BR /&gt;
I am building a data structure which is a combination of volatile vs&lt;BR /&gt;
permanent elements to store a dynamic table (ie. editable by the users) -&lt;BR /&gt;
the table is being used to store a bill of materials list for manufacturing&lt;BR /&gt;
assemblies.  If you don't know what a bill of materials list is, its a list&lt;BR /&gt;
of components used to make an assembly structure:&lt;BR /&gt;
&lt;BR /&gt;
The user will see something like this:&lt;BR /&gt;
&lt;BR /&gt;
BOM ID  | Prt #         |  Description&lt;BR /&gt;
100         | Part 55     | This is a screw&lt;BR /&gt;
101         | Part 888   | This is a harness&lt;BR /&gt;
200         | Part 999   | Steel 5 x 2 x 2&lt;BR /&gt;
&lt;BR /&gt;
etc.&lt;BR /&gt;
&lt;BR /&gt;
The way that this will work is as follows, permanently in the file will be&lt;BR /&gt;
&lt;BR /&gt;
Non volatile data entities&lt;BR /&gt;
===================&lt;BR /&gt;
&lt;BR /&gt;
a. A block (the table the user can edit)&lt;BR /&gt;
&lt;BR /&gt;
b. The block contains a set of groups (one group for each row of the table)&lt;BR /&gt;
&lt;BR /&gt;
c. Each group contains a set of attributes (the columns (tagString) and&lt;BR /&gt;
their values (textString) )&lt;BR /&gt;
&lt;BR /&gt;
d. The actual graphical elements for the table which are box entities are&lt;BR /&gt;
just stored with the block, and regenerated each time the table is modified.&lt;BR /&gt;
&lt;BR /&gt;
e. There will also be some meta-attributes which are just added to the block&lt;BR /&gt;
&lt;BR /&gt;
f. There will also be some column headers, which are just more graphical&lt;BR /&gt;
elements attached to the block&lt;BR /&gt;
&lt;BR /&gt;
Volatile Data Entities&lt;BR /&gt;
===============&lt;BR /&gt;
&lt;BR /&gt;
When the program is loaded the following will be instantiated into memory:&lt;BR /&gt;
&lt;BR /&gt;
a. An object which represents the table as a whole.&lt;BR /&gt;
b. The object contains a collection of the groups, remember the groups will&lt;BR /&gt;
represent the tables rows.&lt;BR /&gt;
c. The object also contains a collection of the meta attributes, referenced&lt;BR /&gt;
by their tag name.&lt;BR /&gt;
&lt;BR /&gt;
Does this data structure sound reasonable?&lt;BR /&gt;
&lt;BR /&gt;
Also I have two further questions:&lt;BR /&gt;
=========================&lt;BR /&gt;
&lt;BR /&gt;
1.  By adding an attribute to a group, the group being attached to a block,&lt;BR /&gt;
does that attribute automatically get added to the block?&lt;BR /&gt;
&lt;BR /&gt;
2. Do all of the selection set methods work with groups?&lt;BR /&gt;
&lt;BR /&gt;
Any help would be extremely appreciated,&lt;BR /&gt;
&lt;BR /&gt;
Dave</description>
      <pubDate>Mon, 18 Oct 1999 04:33:45 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vba-forum/blocks-vs-groups/m-p/337762#M98870</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>1999-10-18T04:33:45Z</dc:date>
    </item>
    <item>
      <title>Re: Blocks Vs. Groups</title>
      <link>https://forums.autodesk.com/t5/vba-forum/blocks-vs-groups/m-p/337763#M98871</link>
      <description>I think your confusing blocks/groups/attribute information&lt;BR /&gt;
&lt;BR /&gt;
&amp;gt; Blocks are permanent (stored in the file)&lt;BR /&gt;
True&lt;BR /&gt;
&lt;BR /&gt;
&amp;gt; Groups are permanent (stored in the file)&lt;BR /&gt;
True&lt;BR /&gt;
&lt;BR /&gt;
&amp;gt; A block can be contained in other blocks, model or paper space&lt;BR /&gt;
True&lt;BR /&gt;
&lt;BR /&gt;
&amp;gt; A block can contain any number of groups but a group cannot contain a&lt;BR /&gt;
block&lt;BR /&gt;
False&lt;BR /&gt;
  Groups can contain any graphical object.&lt;BR /&gt;
&lt;BR /&gt;
&amp;gt; Certain operations on a group are applied to all entities of that group&lt;BR /&gt;
such&lt;BR /&gt;
&amp;gt; as .erase, this cannot be achived with blocks where entities are&lt;BR /&gt;
manipulated&lt;BR /&gt;
&amp;gt; one at a time.&lt;BR /&gt;
False,  If I understand what you are saying here&lt;BR /&gt;
  Blocks are groups of objects/entities that are held within the autocad&lt;BR /&gt;
database within a sequence.&lt;BR /&gt;
  the graphical object that you see on the screen is merely a reference to&lt;BR /&gt;
the original sequence held&lt;BR /&gt;
  within the drawing database.  Entities within a block can not be&lt;BR /&gt;
maipulated one at a time unless you&lt;BR /&gt;
  maipulate the original sequence and update the references.&lt;BR /&gt;
&lt;BR /&gt;
It sounds like you need to reexamin your approch using groups and blocks.&lt;BR /&gt;
Attributes are used excusively&lt;BR /&gt;
with blocks, they are analagus to variables within a program used to&lt;BR /&gt;
store/present information.&lt;BR /&gt;
&lt;BR /&gt;
Good Luck</description>
      <pubDate>Mon, 18 Oct 1999 13:59:14 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vba-forum/blocks-vs-groups/m-p/337763#M98871</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>1999-10-18T13:59:14Z</dc:date>
    </item>
    <item>
      <title>Re:</title>
      <link>https://forums.autodesk.com/t5/vba-forum/blocks-vs-groups/m-p/337764#M98872</link>
      <description>Hi Micheal,&lt;BR /&gt;
&lt;BR /&gt;
Thanks for the kind examination of the email, most helpful.  This sheds some&lt;BR /&gt;
light on some experimentation that I have been doing.&lt;BR /&gt;
&lt;BR /&gt;
Can you confirm the following line of thought....&lt;BR /&gt;
&lt;BR /&gt;
I could not get AutoCAD to add an attribute to a group.&lt;BR /&gt;
&lt;BR /&gt;
Therefore, I think I can confirm that you can only add graphical objects to&lt;BR /&gt;
a group (like arcs, lines, circles).&lt;BR /&gt;
&lt;BR /&gt;
I also discovered that groups cannot be added to blocks.&lt;BR /&gt;
&lt;BR /&gt;
I will re-think my approach.&lt;BR /&gt;
&lt;BR /&gt;
I still need an approach to group together attributes for rows in the&lt;BR /&gt;
drawing file!  I am not sure I like the idea of blocks within blocks&lt;BR /&gt;
&lt;BR /&gt;
Dave&lt;BR /&gt;
&lt;BR /&gt;
Michael Browne wrote in message &amp;lt;7uf99a$man3@adesknews2.autodesk.com&amp;gt;...&lt;BR /&gt;
&amp;gt;I think your confusing blocks/groups/attribute information&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt;&amp;gt; Blocks are permanent (stored in the file)&lt;BR /&gt;
&amp;gt;True&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt;&amp;gt; Groups are permanent (stored in the file)&lt;BR /&gt;
&amp;gt;True&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt;&amp;gt; A block can be contained in other blocks, model or paper space&lt;BR /&gt;
&amp;gt;True&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt;&amp;gt; A block can contain any number of groups but a group cannot contain a&lt;BR /&gt;
&amp;gt;block&lt;BR /&gt;
&amp;gt;False&lt;BR /&gt;
&amp;gt;  Groups can contain any graphical object.&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt;&amp;gt; Certain operations on a group are applied to all entities of that group&lt;BR /&gt;
&amp;gt;such&lt;BR /&gt;
&amp;gt;&amp;gt; as .erase, this cannot be achived with blocks where entities are&lt;BR /&gt;
&amp;gt;manipulated&lt;BR /&gt;
&amp;gt;&amp;gt; one at a time.&lt;BR /&gt;
&amp;gt;False,  If I understand what you are saying here&lt;BR /&gt;
&amp;gt;  Blocks are groups of objects/entities that are held within the autocad&lt;BR /&gt;
&amp;gt;database within a sequence.&lt;BR /&gt;
&amp;gt;  the graphical object that you see on the screen is merely a reference to&lt;BR /&gt;
&amp;gt;the original sequence held&lt;BR /&gt;
&amp;gt;  within the drawing database.  Entities within a block can not be&lt;BR /&gt;
&amp;gt;maipulated one at a time unless you&lt;BR /&gt;
&amp;gt;  maipulate the original sequence and update the references.&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt;It sounds like you need to reexamin your approch using groups and blocks.&lt;BR /&gt;
&amp;gt;Attributes are used excusively&lt;BR /&gt;
&amp;gt;with blocks, they are analagus to variables within a program used to&lt;BR /&gt;
&amp;gt;store/present information.&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt;Good Luck&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt;</description>
      <pubDate>Mon, 18 Oct 1999 17:07:50 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vba-forum/blocks-vs-groups/m-p/337764#M98872</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>1999-10-18T17:07:50Z</dc:date>
    </item>
    <item>
      <title>Re:</title>
      <link>https://forums.autodesk.com/t5/vba-forum/blocks-vs-groups/m-p/337765#M98873</link>
      <description>David,&lt;BR /&gt;
There is a big difference between blocks and groups.&lt;BR /&gt;
&lt;BR /&gt;
You need to look at the internal structure (under the graphical).&lt;BR /&gt;
Groups are individual entities brought together by extended information&lt;BR /&gt;
tagged to the instance of that entity (only).&lt;BR /&gt;
     (the only reason they act or can act as one is through the programming&lt;BR /&gt;
of the "Group" command)&lt;BR /&gt;
Blocks are entities that used to reside individually but were compiled into&lt;BR /&gt;
a definition and stored as non-graphical data.&lt;BR /&gt;
The blocks that you see on the screen are references to that compiled data.&lt;BR /&gt;
Now, if you place an attribute definition&lt;BR /&gt;
within the entities that are to be used in creating the block definition,&lt;BR /&gt;
then AutoCAD views those as retrievable storage&lt;BR /&gt;
locations allowing the user to store variable information within the cozy&lt;BR /&gt;
confines of the block.  Programmatically, this can&lt;BR /&gt;
give the appearance of a database ,TagName = FieldName   TagString =&lt;BR /&gt;
RecordValue&lt;BR /&gt;
&lt;BR /&gt;
Groups can also get confused if copied and/or blocked&lt;BR /&gt;
&lt;BR /&gt;
David Hadfield &lt;HADFIELD&gt; wrote in message&lt;BR /&gt;
news:7ufk5e$m9j18@adesknews2.autodesk.com...&lt;BR /&gt;
&amp;gt; Hi Micheal,&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt; Thanks for the kind examination of the email, most helpful.  This sheds&lt;BR /&gt;
some&lt;BR /&gt;
&amp;gt; light on some experimentation that I have been doing.&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt; Can you confirm the following line of thought....&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt; I could not get AutoCAD to add an attribute to a group.&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt; Therefore, I think I can confirm that you can only add graphical objects&lt;BR /&gt;
to&lt;BR /&gt;
&amp;gt; a group (like arcs, lines, circles).&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt; I also discovered that groups cannot be added to blocks.&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt; I will re-think my approach.&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt; I still need an approach to group together attributes for rows in the&lt;BR /&gt;
&amp;gt; drawing file!  I am not sure I like the idea of blocks within blocks&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt; Dave&lt;BR /&gt;
&amp;gt;&lt;BR /&gt;
&amp;gt;&lt;/HADFIELD&gt;</description>
      <pubDate>Mon, 18 Oct 1999 17:40:07 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vba-forum/blocks-vs-groups/m-p/337765#M98873</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>1999-10-18T17:40:07Z</dc:date>
    </item>
  </channel>
</rss>

