<div dir="ltr">Alan, thank you very much for your answers.<div><br>Here is my opinion regarding the questions:<br>1. It seems to me that it is better to have a centralized data dictionary using the DB.<br>2. Personally it is more useful to have the translations in DB, with the caching functionality you mentioned. That way we avoid changing the translation files through source code.<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">El mar, 15 mar 2022 a las 6:58, Alan Lord (<<a href="mailto:alanslists@gmail.com">alanslists@gmail.com</a>>) escribió:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 15/03/2022 11:43, Alan Lord wrote:<br>
<br>
> defaultvalue is optional, setPicklistValues($array) is not. That is what <br>
> populates the picklist tables with the values.<br>
<br>
One thing to be aware of is that setPicklistValues() doesn't check for <br>
duplicate entries (or it didn't last time I looked).<br>
<br>
So you either need to empty the table first (be careful with UIType 15 <br>
as there are now entries in vtiger_role2picklist too), or write your own <br>
code to check so if you try and recreate a picklist field you don't end <br>
up with multiple entries with the same value.<br>
<br>
HTH<br>
<br>
Al<br>
<br>
<br>
_______________________________________________<br>
<a href="http://www.vtiger.com/" rel="noreferrer" target="_blank">http://www.vtiger.com/</a><br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><br><div>---------------------------------------------------------------</div><div>Ing. Henry C.</div><div>Tel.: +51 956727976</div></div></div></div></div></div></div></div></div></div></div></div></div>