问题描述
我想实现一个将发票状态更改为“已验证”时触发的Sugar逻辑挂钩。
这是我的逻辑钩子:
<?PHP
$hook_version = 1;
$hook_array = Array();
$hook_array['after_save'] = Array();
$hook_array['after_save'][] = Array(1,'status invoices Changes','/var/www/html/suitecrm/modules/AOS_Invoices/AOS_LogicHooks.PHP','AOS_LogicHooks','statusInvoicesChanges');
?>
这是我的动作课:
<?PHP class AOS_LogicHooks {
public function statusInvoicesChanges (SugarBean $bean,$event,$arguments){
if($bean->status == 'Validated' && $bean->fetched_row->status <> $bean->status){
$GLOBALS['log']->fatal("Status has been changed");
}}}
?>
我想念什么?
解决方法
我们都犯了一个简单的错误,读取的行是一个数组,因此您不能将内容作为属性访问。
我刚刚测试了一下,效果很好!看看:
```@(Html.Kendo().Grid(Model.SpecificRequirementList)
.Name("SpecificationRequirementDetails")
.Columns(columns =>
{
columns.Bound(p => p.Id).Visible(false);
columns.Bound(p => p.SpecificRequirement).Title("Specific Requirements").HtmlAttributes(new { style = "text-align:left;",@title = "#= SpecificRequirement#" }).Width("10%");
columns.Bound(p => p.Description).Title("Description").Width("10%").HtmlAttributes(new { style = "text-align:left;",@title = "#= Description#" }).Width("10%");
//columns.ForeignKey(o => o.Uom,Model.UomCollection,"Value","Text").Title("UOM").HeaderHtmlAttributes(new { style = "text-align: left" }).Width(50).Visible(true);
columns.ForeignKey(p => p.Uom,(System.Collections.IEnumerable)ViewBag.MyList,"Text").Width(60);
columns.Bound(p => p.Modifiedby).Title("Modified By").Width("5%").HtmlAttributes(new { style = "text-align:left;",@title = "#= Modifiedby#" }).Width("5%");
columns.Bound(p => p.ModifiedOn).Title("Modified On").Width("5%").HtmlAttributes(new { style = "text-align:left;",@title = "#= ModifiedOn#" }).Width("5%");
columns.Bound(p => p.Active).Title("Active").Width(20).ClientTemplate("<input type='checkbox' class='clscheckdactive' id='checkedActive' name='checkedActive' # if (Active=='Y') { #checked='checked'# } else {Active=='N'}# disabled='true' value= '#= Id #' />")
.Filterable(false);
})
.Selectable()
.Navigatable()
.Scrollable()
.Filterable(KendoConfig.FilterConfiguration)
.Editable(e => e.Mode(GridEditMode.InCell).Enabled(true))
.Reorderable(reorder => reorder.Columns(true))
.Resizable(resize => resize.Columns(true))
.DataSource(dataSource => dataSource
.Ajax()
.Batch(true)
//.PageSize(20)
.Model(model =>
{
model.Id(p => p.Id);
model.Field(p => p.SpecificRequirement).Editable(true);
model.Field(p => p.Description).Editable(true);
model.Field(p => p.Active).Editable(false);
model.Field(p => p.Modifiedby).Editable(false);
model.Field(p => p.ModifiedOn).Editable(false);
})
.Read(read => read.Action("GetSpecificationRequirements","SpecificRequirement"))
)
.Events(e => e.DataBound("onDataboundRequirementsGrid").Edit("OnEditGrid"))
)```