<font><font face="verdana,sans-serif">I found the idea excellent! But we have to analyze the situation better for not having a table with many records, impacting on the performance of the database. Let me give an example of a client of mine: </font></font><div>

<font><font face="verdana,sans-serif"><br></font></font></div><div><font><font face="verdana,sans-serif">4245 quotes</font></font></div><div><font><font face="verdana,sans-serif">317 Sales Order</font></font></div><div><font><font face="verdana,sans-serif">1511 Invoices</font></font></div>

<div><font><font face="verdana,sans-serif">22,163 Contacts</font></font></div><div><font><font face="verdana,sans-serif">7942 Accounts</font></font></div><div><font><font face="verdana,sans-serif">356 Leads</font></font></div>

<div><font><font face="verdana,sans-serif"><br></font></font></div><div><font><font face="verdana,sans-serif">Total of 36,534 records.</font></font></div><div><font><font face="verdana,sans-serif"><br></font></font></div>

<div><font><font face="verdana,sans-serif">That&#39;s because the company is small, with only 20 employees using vtiger. If we pass this number to a large company, does not lose much in performance?</font></font></div><div>

<font><font face="verdana,sans-serif"><br></font></font></div><div><font><font face="verdana,sans-serif">Well, still find value in this idea, would greatly reduce the complexity in development. </font></font><span style="font-family:verdana,sans-serif">Soon I </span><span style="font-family:verdana,sans-serif">vote</span><span style="font-family:verdana,sans-serif"> </span><span style="font-family:verdana,sans-serif">+1 too.</span></div>

<div><span style="font-family:verdana,sans-serif"><br></span></div><div><span style="font-family:verdana,sans-serif">P.S. </span><font face="verdana, sans-serif">Sorry if my English is very difficult to read, but if you blame the google translator! lol</font></div>

<div><div><font><font face="verdana,sans-serif"><br></font></font></div><div><font><font face="verdana,sans-serif"><br></font></font></div><div><font><font face="verdana,sans-serif"><br clear="all"></font></font>Atte,<br>

<b>Rodrigo Souza de Oliveira</b><div><b>Consultor de TI<br></b>Hostplan Informática Ltda<br><div>Telefones: (21) 9217-7909 e/ou (21) 8153-5287<div>website: <a href="http://www.hostplan.com.br" target="_blank">www.hostplan.com.br</a><br>

e-mail/msn: <a href="mailto:rodrigo@hostplan.com.br" target="_blank">rodrigo@hostplan.com.br</a><br><img src="http://www.hostplan.com.br/logo.jpg" height="137" width="200"><br></div></div></div><br>
<br><br><div class="gmail_quote">2012/6/1 Joe Bordes <span dir="ltr">&lt;<a href="mailto:joe@tsolucio.com" target="_blank">joe@tsolucio.com</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

This is a good idea, but has some implications and has to be well defined.<br>
If the same interface is kept, then this is really an internal<br>
restructure (rather easy and nice), if you want to add many addresses to<br>
any account (entity) then creating/editing becomes a few steps more complex.<br>
Then we have to keep in mind that certain entities MUST have the address<br>
on the record, for consistency, like a SO where we need the address on<br>
it to make sure we don&#39;t send the goods to a different address if the<br>
account&#39;s address changes or on the Invoice where this needs to be kept<br>
for legal reasons.<br>
Also if various addresses are permitted on the account/contact we need a<br>
way to permit the user to pick which of them to use for billing and<br>
shipping.<br>
...<br>
and probably some additional logic that I haven&#39;t considered.<br>
<br>
In short, like most things, it isn&#39;t that easy.<br>
<br>
That said, I would vote +1 as I consider it is important<br>
<br>
Have a nice weekend<br>
Joe<br>
TSolucio<br>
<br>
<br>
El 01/06/12 16:55, Adam Heinz escribió:<br>
<div><div class="h5">&gt; Has anyone given any thought to building a standalone address module?<br>
&gt; There are a lot of repeated (and inconsistently named) address fields<br>
&gt; in the database.  Wouldn&#39;t it be simpler to have a single<br>
&gt; vtiger_address table with an addresstype picklist (&#39;shipping&#39;,<br>
&gt; &#39;billing&#39;, &#39;mailing&#39;, &#39;other&#39;), then just refer to this table as a<br>
&gt; related module?<br>
&gt;<br>
&gt; mysql&gt;  desc vtiger_contactaddress;<br>
&gt; +------------------+---------------+------+-----+---------+-------+<br>
&gt; | Field            | Type          | Null | Key | Default | Extra |<br>
&gt; +------------------+---------------+------+-----+---------+-------+<br>
&gt; | contactaddressid | int(19)       | NO   | PRI | 0       |       |<br>
&gt; | mailingcity      | varchar(40)   | YES  |     | NULL    |       |<br>
&gt; | mailingstreet    | varchar(250)  | YES  |     | NULL    |       |<br>
&gt; | mailingcountry   | varchar(40)   | YES  |     | NULL    |       |<br>
&gt; | othercountry     | varchar(30)   | YES  |     | NULL    |       |<br>
&gt; | mailingstate     | varchar(30)   | YES  |     | NULL    |       |<br>
&gt; | mailingpobox     | varchar(30)   | YES  |     | NULL    |       |<br>
&gt; | othercity        | varchar(40)   | YES  |     | NULL    |       |<br>
&gt; | otherstate       | varchar(50)   | YES  |     | NULL    |       |<br>
&gt; | mailingzip       | varchar(30)   | YES  |     | NULL    |       |<br>
&gt; | otherzip         | varchar(30)   | YES  |     | NULL    |       |<br>
&gt; | otherstreet      | varchar(250)  | YES  |     | NULL    |       |<br>
&gt; | otherpobox       | varchar(30)   | YES  |     | NULL    |       |<br>
&gt; +------------------+---------------+------+-----+---------+-------+<br>
&gt;<br>
&gt; mysql&gt;  desc vtiger_organizationdetails;<br>
&gt; +------------------+--------------+------+-----+---------+-------+<br>
&gt; | Field            | Type         | Null | Key | Default | Extra |<br>
&gt; +------------------+--------------+------+-----+---------+-------+<br>
&gt; | organizationname | varchar(60)  | NO   | PRI |         |       |<br>
&gt; | address          | varchar(150) | YES  |     | NULL    |       |<br>
&gt; | city             | varchar(100) | YES  |     | NULL    |       |<br>
&gt; | state            | varchar(100) | YES  |     | NULL    |       |<br>
&gt; | country          | varchar(100) | YES  |     | NULL    |       |<br>
&gt; | code             | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; | phone            | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; | fax              | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; | website          | varchar(100) | YES  |     | NULL    |       |<br>
&gt; | logoname         | varchar(50)  | YES  |     | NULL    |       |<br>
&gt; | logo             | mediumtext   | YES  |     | NULL    |       |<br>
&gt; | showtax          | varchar(1)   | NO   |     | NULL    |       |<br>
&gt; +------------------+--------------+------+-----+---------+-------+<br>
&gt;<br>
&gt; mysql&gt;  desc vtiger_quotesbillads;<br>
&gt; +--------------------+--------------+------+-----+---------+-------+<br>
&gt; | Field              | Type         | Null | Key | Default | Extra |<br>
&gt; +--------------------+--------------+------+-----+---------+-------+<br>
&gt; | quotebilladdressid | int(19)      | NO   | PRI | 0       |       |<br>
&gt; | bill_city          | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; | bill_code          | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; | bill_country       | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; | bill_state         | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; | bill_street        | varchar(250) | YES  |     | NULL    |       |<br>
&gt; | bill_pobox         | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; +--------------------+--------------+------+-----+---------+-------+<br>
&gt;<br>
&gt; mysql&gt;  desc vtiger_quotesshipads;<br>
&gt; +--------------------+--------------+------+-----+---------+-------+<br>
&gt; | Field              | Type         | Null | Key | Default | Extra |<br>
&gt; +--------------------+--------------+------+-----+---------+-------+<br>
&gt; | quoteshipaddressid | int(19)      | NO   | PRI | 0       |       |<br>
&gt; | ship_city          | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; | ship_code          | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; | ship_country       | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; | ship_state         | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; | ship_street        | varchar(250) | YES  |     | NULL    |       |<br>
&gt; | ship_pobox         | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; +--------------------+--------------+------+-----+---------+-------+<br>
&gt;<br>
&gt; mysql&gt;  desc vtiger_accountbillads;<br>
&gt; +------------------+--------------+------+-----+---------+-------+<br>
&gt; | Field            | Type         | Null | Key | Default | Extra |<br>
&gt; +------------------+--------------+------+-----+---------+-------+<br>
&gt; | accountaddressid | int(19)      | NO   | PRI | 0       |       |<br>
&gt; | bill_city        | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; | bill_code        | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; | bill_country     | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; | bill_state       | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; | bill_street      | varchar(250) | YES  |     | NULL    |       |<br>
&gt; | bill_pobox       | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; +------------------+--------------+------+-----+---------+-------+<br>
&gt;<br>
&gt; mysql&gt;  desc vtiger_accountshipads;<br>
&gt; +------------------+--------------+------+-----+---------+-------+<br>
&gt; | Field            | Type         | Null | Key | Default | Extra |<br>
&gt; +------------------+--------------+------+-----+---------+-------+<br>
&gt; | accountaddressid | int(19)      | NO   | PRI | 0       |       |<br>
&gt; | ship_city        | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; | ship_code        | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; | ship_country     | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; | ship_state       | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; | ship_pobox       | varchar(30)  | YES  |     | NULL    |       |<br>
&gt; | ship_street      | varchar(250) | YES  |     | NULL    |       |<br>
&gt; +------------------+--------------+------+-----+---------+-------+<br>
&gt; _______________________________________________<br>
&gt; <a href="http://www.vtiger.com/" target="_blank">http://www.vtiger.com/</a><br>
<br>
</div></div>_______________________________________________<br>
<a href="http://www.vtiger.com/" target="_blank">http://www.vtiger.com/</a><br>
</blockquote></div><br></div></div>