2014-02-20 3 views
0

Я работаю с SugarCRM.Где я могу переопределить create_export_query для настраиваемого модуля?

У меня есть пользовательский модуль, я пытаюсь переопределить метод экспорта, чтобы не включать все столбцы. Мне действительно нужно сделать столбцы зависимыми от видимых столбцов в представлении списка (что я могу выяснить).

Я просматриваю все файлы в SugarCRM, я замечаю, что встроенные модули имеют файл Module.php, где для метода экспорта есть 'SELECT Module.*'. Я не могу найти такой файл для моего настраиваемого модуля. Я прошу помощи о том, где я могу создать (если необходимо), или где я могу найти файл для настройки create_export_query.

ответ

1

create_export_query - метод в SugarBean (/data/SugarBean.php - базовый класс для почти всех объектов SugarCRM) и может быть переопределен в файле основного класса bean. Так что если у вас есть собственный модуль MyModule вы можете найти класс ядра в /modules/MyModule/MyModule.php

Существует, вероятно, не метод create_export_query() есть в настоящее время, так что вы можете написать один в Это будет выглядеть примерно так:.

<?php 
require_once("include/SugarObjects/templates/basic/Basic.php"); 
class MyModule extends Basic{ 

    public function MyModule(){ 
    parent::Basic(); 
    } 

    public function create_export_query(&$order_by, &$where, $relate_link_join=''){ 
    $query = " select * from {$this->table_name} "; // build your query string however you like 
    return $query; 
    } 
} 
+0

Это похоже на то, что я хочу сделать. Я пробовал все выходные, и я все еще немного потерял. Я вижу, как это происходит в двух разных местах./custom/modulebuilder/packages/pkg/modules/myModule и/custom/modules/myModules - это важно? – Dagron

+1

Это очень важно, но оба места, о которых вы упоминаете, неверны. '/ custom/modulebuilder /' представляет собой модуль, который вы создали с помощью модуля Builder, но он еще не развернут. Это похоже на промежуточную площадку. Вам нужно будет внести эти изменения в ваш основной модуль после развертывания, поэтому, если вы еще не развернули свой модуль, продолжайте и делайте это. Затем перейдите прямо в '/ modules/MyModule/MyModule.php'. При редактировании основного класса модуля не включайтесь в '/ custom' вообще. –

Смежные вопросы