10-14-2015, 11:38 AM
He creado 65 nuevos campos personalizados en el Módulo Contactos, mediante un script según vtlib 5.2.
Tras la importación de los registros mediante un fichero CSV (no se genera ningún tipo de error y se confirma correctamente el número de registros importados), sólo se muestran los datos mapeados con los campos estándar del crm (ejemplo: Nombre, Apellidos, Teléfono, etc etc). Los campos personalizados aparecen vacíos.
En cambio, se muestran correctamente los datos después de la importación, si creo previamente dichos campos personalizados directamente desde el Editor.
Si en un registro ya creado, lo edito para rellenar cualquiera de los campos personalizados que fueron creados mediante el script, muestra correctamente el dato insertado.
Adjunto detalle (por ejemplo de un par de campos) del script de creación:
...
$Vtiger_Utils_Log = true;
include_once('vtlib/Vtiger/Module.php');
include_once('vtlib/Vtiger/Block.php');
$module = Vtiger_Module::getInstance('Contacts');
//*************************************** Bloque: Datos Personales *******************************************
$bloque = 4; // Bloque Datos Personales (blockid) = 4
$block = Vtiger_Block::getInstance($bloque, $module);
// CAMPO: DNI
// ========
$field3 = new Vtiger_Field();
$field3->name = 'DNI';
$field3->label = 'DNI';
$field3->table = 'vtiger_contactscf';
$field3->column = 'dni';
$field3->columntype = 'VARCHAR(9)';
$field3->uitype = 1;
$field3->typeofdata = 'V~O~LE~9';
$block->addField($field3);
//********************************************** Bloque: Historial 1 ******************************************
$block2 = new Vtiger_Block();
$block2->label = 'LBL_CUSTOM_HISTORIAL1';
$block2->sequence = 3;
$module->addBlock($block2);
// CAMPO: Epilepsia o convulsiones
// ====================
$field7 = new Vtiger_Field();
$field7->name = 'Epilepsia';
$field7->label = 'Epilepsia';
$field7->table = 'vtiger_contactscf';
$field7->column = 'epilepsia';
$field7->columntype = 'TINYINT(3)';
$field7->uitype = 56; // A checkbox which takes input in the form of yes or no.
$field7->typeofdata = 'C~O';
$block2->addField($field7);
...
No encuentro el error. Agradecería cualquier sugerencia o información al respecto.
Muchas gracias. Saludos.
Tras la importación de los registros mediante un fichero CSV (no se genera ningún tipo de error y se confirma correctamente el número de registros importados), sólo se muestran los datos mapeados con los campos estándar del crm (ejemplo: Nombre, Apellidos, Teléfono, etc etc). Los campos personalizados aparecen vacíos.
En cambio, se muestran correctamente los datos después de la importación, si creo previamente dichos campos personalizados directamente desde el Editor.
Si en un registro ya creado, lo edito para rellenar cualquiera de los campos personalizados que fueron creados mediante el script, muestra correctamente el dato insertado.
Adjunto detalle (por ejemplo de un par de campos) del script de creación:
...
$Vtiger_Utils_Log = true;
include_once('vtlib/Vtiger/Module.php');
include_once('vtlib/Vtiger/Block.php');
$module = Vtiger_Module::getInstance('Contacts');
//*************************************** Bloque: Datos Personales *******************************************
$bloque = 4; // Bloque Datos Personales (blockid) = 4
$block = Vtiger_Block::getInstance($bloque, $module);
// CAMPO: DNI
// ========
$field3 = new Vtiger_Field();
$field3->name = 'DNI';
$field3->label = 'DNI';
$field3->table = 'vtiger_contactscf';
$field3->column = 'dni';
$field3->columntype = 'VARCHAR(9)';
$field3->uitype = 1;
$field3->typeofdata = 'V~O~LE~9';
$block->addField($field3);
//********************************************** Bloque: Historial 1 ******************************************
$block2 = new Vtiger_Block();
$block2->label = 'LBL_CUSTOM_HISTORIAL1';
$block2->sequence = 3;
$module->addBlock($block2);
// CAMPO: Epilepsia o convulsiones
// ====================
$field7 = new Vtiger_Field();
$field7->name = 'Epilepsia';
$field7->label = 'Epilepsia';
$field7->table = 'vtiger_contactscf';
$field7->column = 'epilepsia';
$field7->columntype = 'TINYINT(3)';
$field7->uitype = 56; // A checkbox which takes input in the form of yes or no.
$field7->typeofdata = 'C~O';
$block2->addField($field7);
...
No encuentro el error. Agradecería cualquier sugerencia o información al respecto.
Muchas gracias. Saludos.