Модуль уже присутствует — выберите другое имя. vtiger 6.4

Я выполнил все шаги, указанные в разделе создать пользовательский модуль в vtiger 6, чтобы создать пользовательский модуль, но я получаю сообщение об ошибке Модуль уже присутствует - выберите другое имя

Пожалуйста посоветуй.


person onekadoplant    schedule 11.04.2016    source источник
comment
Возможный дубликат создать пользовательский модуль в vtiger 6   -  person Morten Bergfall    schedule 11.04.2016


Ответы (1)


Поскольку вы используете vtiger 6.4, существует большая разница между vTiger 6 и vtiger6.4.

Попробуйте использовать приведенный ниже скрипт, поскольку я использую его для создания нового модуля. Используйте новое имя модуля. И измените Типы пользовательского интерфейса и метки полей в соответствии с вашими требованиями.

<?php

    $Vtiger_Utils_Log = true;
    include_once('vtlib/Vtiger/Menu.php');
    include_once('vtlib/Vtiger/Module.php');


    $module = new Vtiger_Module();
    $module->name = 'Your_MODULE_NAME';
    $module->parent = 'Tools';
    $module->save();

    $module->initTables();
    $module->initWebservice();

    $block = new Vtiger_Block();
    $block->label = 'LBL_INFORMATION_DETAIL';
    $module->addBlock($block); //to create a new block

    $field1  = new Vtiger_Field();
    $field1->name = 'browse';
    $field1->table=$module->basetable;
    $field1->label= 'Upload Csv';
    $field1->column = 'browse';
    $field1->columntype = 'VARCHAR(255)';
    $field1->uitype= 28;
    $field1->typeofdata = 'V~O';
    $block->addField($field1);  

    $field2  = new Vtiger_Field();
    $field2->name = 'fieldid';
    $field2->table=$module->basetable;
    $field2->label= 'Record ID';
    $field2->uitype= 4;
    $field2->column = 'fieldid';
    $field2->columntype = 'VARCHAR(255)';
    $field2->typeofdata = 'V~M';
    $block->addField($field2);  
    $module->setEntityIdentifier($field2);      

    $field3  = new Vtiger_Field();
    $field3->name = 'age';
    $field3->table=$module->basetable;
    $field3->label= 'Age';
    $field3->uitype= 1;
    $field3->column = 'age';
    $field3->columntype = 'VARCHAR(100)';
    $field3->typeofdata = 'V~O';
    $block->addField($field3);  

    $field4  = new Vtiger_Field();
    $field4->name = 'statusrecord';
    $field4->table=$module->basetable;
    $field4->label= 'Status';
    $field4->uitype= 15;
    $field4->column = 'statusrecord';
    $field4->columntype = 'VARCHAR(255)';
    $field4->setPicklistValues( Array('new','closed','closedwithfailure','inprogress'));
    $field4->typeofdata = 'V~M';
    $block->addField($field4);      

    // Recommended common fields every Entity module should have (linked to core table) 
    $field5 = new Vtiger_Field();
    $field5->name = 'assigned_user_id';
    $field5->label = 'Assigned To';
    $field5->table = 'Vtiger_crmentity';
    $field5->column = 'smownerid';
    $field5->uitype = 53;
    $field5->typeofdata = 'V~M';
    $block->addField($field5);

    $field6 = new Vtiger_Field();
    $field6->name = 'CreatedTime';
    $field6->label= 'Created Time';
    $field6->table = 'Vtiger_crmentity';
    $field6->column = 'createdtime';
    $field6->uitype = 70;
    $field6->typeofdata = 'T~O';
    $field6->displaytype= 2;
    $block->addField($field6);

    $field7 = new Vtiger_Field();
    $field7->name = 'ModifiedTime';
    $field7->label= 'Modified Time';
    $field7->table = 'Vtiger_crmentity';
    $field7->column = 'modifiedtime';
    $field7->uitype = 70;
    $field7->typeofdata = 'T~O';
    $field7->displaytype= 2;
    $block->addField($field7);   

    // Filter Setup    
    $filter1 = new Vtiger_Filter();
    $filter1->name = 'All';
    $filter1->isdefault = true;
    $module->addFilter($filter1);
    // Add fields to the filter create 

    $filter1->addField($field7, 2);
    $filter1->addField($field3, 3);
    $filter1->addField($field4, 5);

    /** Set sharing access of this module */
    $module->setDefaultSharing(); 
    /** Enable and Disable available tools */
    $module->enableTools(Array('Import', 'Export'));
    $module->disableTools('Merge');         
?>

Вы также можете обратиться к Entity-Module-Documentation

person Sachin I    schedule 11.04.2016
comment
Спасибо за приведенный выше скрипт. Я успешно создал модуль, и когда я перешел к модулю, добавил тестовую запись и нажал кнопку «Сохранить», я получил сообщение об ошибке на пустой странице, которое - {success:false,error:{code:Record, к которому вы пытаетесь получить доступ, не найдено, сообщение: запись, к которой вы пытаетесь получить доступ, не найдена}} пожалуйста, посоветуйте. - person onekadoplant; 11.04.2016
comment
Удалите фильтр и попробуйте... Вы должны изменить сценарий в соответствии с вашими потребностями. Используйте родительский модуль, который доступен в вашей crm. - person Sachin I; 12.04.2016
comment
как снять фильтр? - person onekadoplant; 12.04.2016
comment
Удалите код фильтра из скрипта.. чуть ниже //Настройка фильтра и попробуйте указать новое имя модуля. - person Sachin I; 12.04.2016
comment
в этом случае мне нужно удалить этот модуль.. как я могу его удалить? Могу ли я использовать приведенный ниже скрипт для удаления модуля? ‹?php include_once('vtlib/Vtiger/Module.php'); /* * Удалить модуль */ $module = Vtiger_Module::getInstance('Module'); if($module) { // Удалить из системы $module-›delete(); модуль эха удален!; } else { Модуль echo не найден и не может быть удален!; } ?› - person onekadoplant; 12.04.2016
comment
Но если я удалю код фильтра, я не смогу использовать функции фильтра для пользовательского модуля, и я хочу использовать функцию фильтра. Посоветуйте лучшее решение. Спасибо - person onekadoplant; 12.04.2016
comment
не могли бы вы подтвердить правильность приведенного выше сценария удаления модуля, чтобы я мог удалить этот модуль и создать все заново. Пожалуйста помоги. Спасибо. - person onekadoplant; 12.04.2016
comment
Я удалил модуль, а затем еще раз воссоздал этот модуль в crm, и на этот раз я также удалил //Настройку фильтра, но все же, когда я сохраняю запись, я получаю сообщение об ошибке {success:false,error:{code:Record вы пытаетесь доступ не найден, сообщение: запись, к которой вы пытаетесь получить доступ, не найдена}} пожалуйста, помогите мне. Спасибо - person onekadoplant; 12.04.2016
comment
Я создал модуль правильно, но теперь, даже когда я добавляю любое настраиваемое поле, я получаю сообщение об ошибке. Запись, к которой вы пытаетесь получить доступ, не найдена, пожалуйста, помогите мне. - person onekadoplant; 14.04.2016