2017-03-21 63 views
0

我想在帳戶詳細信息頁面的聯繫人子面板中創建「呼叫按鈕」。我可以使用邏輯掛鉤在聯繫人列表頁面中創建「呼叫按鈕」。但是同樣的實現方式在子面板中不起作用。 (這個按鈕沒有與數據庫連接,只需點擊它就會觸發一個JavaScript函數)。請幫助我。 在此先感謝。套房CRM - 在帳戶詳細信息頁面的聯繫人子面板中添加自定義字段

+0

你能顯示你的聯繫人子面板元數據文件嗎? –

+0

當然。 文件call_button.php我保存在/自定義/模塊/聯繫人/元數據/子面板 '<?PHP的 $字典[ '帳戶'] [ '字段'] [ 'call_button_c'] =陣列( \t \t '名稱' \t \t \t \t> 'call_button_c', \t \t 'VNAME' \t \t \t> 'LBL_CALL_BUTTON_C', \t \t '類型' \t \t \t \t> 'VARCHAR', \t \t'source'\t \t \t =>'non-db',); ?>' 要在賬戶中的聯繫人子面板添加自定義字段的詳細信息頁面,我們必須只能編輯「帳戶」模塊?我發現編輯聯繫人模塊的地方。 謝謝 – user1740757

+0

@DanielSamson你能解釋一下步驟可以按照實施這個。 '/ modules/Accounts/metadata/subpanels'目錄中有三個文件。 default.php,ForEmails.php,ForProspectsLists.php。文件名中是否有任何特定的原因。如果我們在自定義目錄中創建子面板文件夾,它工作嗎?我對CRM有點困惑和新鮮。謝謝。 – user1740757

回答

0

看看modules/Contacts/metadata/subpanels/ForAccounts.php。

爲什麼「ForAccounts」?它只是意味着這個Contacts子面板將被加載到Accounts模塊中。這樣你可以爲每個模塊提供不同的功能。 默認只是在未指定調用模塊時使用的默認子面板。這是由於SuiteCRM處理關係的方式。您可以在關係中指定應顯示哪個子面板。

注意「top_buttons」數組。這些是子面板頂部的按鈕。 widget_class對應於include/generic/SugarWidgets中的小部件。例如SubPanelTopCreateButton實際上是SugarWidgetSubPanelTopCreateButton。

'top_buttons' => array(
    array('widget_class' => 'SubPanelTopCreateButton'), 
    array('widget_class' => 'SubPanelTopSelectButton', 'popup_module' => 'Contacts'), 
), 

如果你想添加自己的按鈕,你必須先創建自己的小部件,然後將其添加到top_buttons陣列。

子板使用以下方法來生成的按鈕

  • 包括/通用/ LayoutManager.php
  • 包括/子面板/ SubPanel.php:120
  • 包括/子面板/ SubPanelTiles.php: 426

您可能需要使用佈局管理器註冊您的小部件。

SugarWidgets是一個核心功能,目前不會從自定義目錄加載。

查看SugarWidgetSubPanelTopCreateTaskButton.php作爲參考指南。

+0

非常感謝您的回覆。我有一個關於'ForAccounts.php'和子面板的想法。但關於我想讓按鈕在每一行中的按鈕。讓我試試這個。 – user1740757

+0

我在文件中'/ custom/modules/Contacts/metadata/subpanels'中創建了'ForAccounts.php',添加了調用按鈕數組(從'subpanels/default.php'複製的內容)。現在,如果我們轉到「管理 - >工作室」並展開「帳戶 - >子面板 - >聯繫人」,則「默認列表中的」呼叫按鈕「就在那裏。但它不會出現在帳戶的聯繫人子面板中!謝謝。 – user1740757

+0

一旦我創建'ForAccounts.php'和'快速修復和重建',一個新文件被創建'Account_subpanel_contacts.php'。每當我修改文件時,它都反映了子面板列表。 – user1740757

相關問題