2011-04-05 132 views
4

我有一個自定義模塊樣本管理。我想在editviewdef.php中創建一個文件類型字段,以便我可以上傳文件並在需要時從詳細視圖下載。有人會告訴我如何進行這項任務的步驟?在sugarcrm自定義模塊中創建文件類型字段

+0

升級到最新版本的糖和文件類型字段包含在工作室或模塊構建器的框中。 – 2011-05-20 09:25:46

+0

希望做同樣的事情,並在最新版本中沒有文件字段 – cuzzea 2011-11-08 15:52:14

+0

只在商業版本,而不是在開源版本。對於開源版本,請看看這個:http://www.sugarforge.org/projects/enhancedstudio/ – leon 2012-06-19 06:50:42

回答

1

你需要做的是通過創建一個自定義SugarField類型:

  1. 創建一個新的文件夾中包含/ SugarFields /場
  2. 在該文件夾,你需要的字段類型的名字創建一個.tpl文件來描述爲每個視圖類型設置字段的方式(這樣你就可以得到一個EditView.tpl,DetailView.tpl和任何其他的視圖,你將使用該字段)。我會在/ include/SugarFields/Fields/Text中尋找你應該創建什麼的一個好例子。
  3. 使用該類型創建新字段,或使用vardefs或field_meta_data表(對於自定義字段)將字段類型從其現有類型更改爲新類型。

我可以明確地證實SugarCRM 6.4.1中存在一個文件字段類型,一旦您定義字段的佈局方式,您應該能夠與其餘的CRM無縫地使用它。

1

如果您是通過Module Builder創建模塊,只需將'file'=> 1添加到$ config變量(config.php)中的'templates'數組中即可。然後,你就可以到一個新的上傳文件字段添加到您的editviewdefs.php:

 1 => 
     array (
     'name' => 'uploadfile', 
     'displayParams' => 
     array (
      'onchangeSetFileNameTo' => 'document_name', 
     ), 
    ), 

不要忘記添加形式和JavaScript元素的數組templateMeta在editviewdefs.php:

'form' => 
    array (
    'enctype' => 'multipart/form-data', 
    'hidden' => 
    array (
    ), 
), 
    'javascript' => '<script type="text/javascript" src="include/javascript/popup_parent_helper.js?s={$SUGAR_VERSION}&c={$JS_CUSTOM_VERSION}"></script> 
    <script type="text/javascript" src="include/javascript/sugar_grp_jsolait.js?s={$SUGAR_VERSION}&c={$JS_CUSTOM_VERSION}"></script> 
    <script type="text/javascript" src="modules/Documents/documents.js?s={$SUGAR_VERSION}&c={$JS_CUSTOM_VERSION}"></script>', 

您還需要添加uploadfile領域detailvidefs.php:

 1 => 
     array (
     'name' => 'uploadfile', 
     'displayParams' => 
     array (
      'link' => 'uploadfile', 
      'id' => 'id', 
     ), 
    ), 

希望這有助於!

相關問題