#php #sugarcrm #suitecrm
#php #sugarcrm #suitecrm
Вопрос:
Возможно ли добавить пользовательскую кнопку, которая загружает PDF? я пытался это сделать, но я получаю только кнопку создания из этого примера: Ссылка здесь
'searchInputs' => array(
1 => 'payment_date',
2 => 'payment_stage',
3 => 'or_no',
),
'create' =>
array(
'formBase' => 'PrintPayment.php',
'formBaseClass' => 'PrintPayment',
'getFormBodyParams' => array('', '', 'PrintPaymentSave'),
'createButton' => $mod_strings['LNK_NEW_PAYMENT']
),
есть ли какой-либо другой способ добавить функциональность загрузки?
<?php
if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
require_once('include/SugarObjects/forms/FormBase.php');
class PrintPayment extends FormBase {
var $moduleName = 'PrintPayment';
var $objectName = 'PrintPayment';
function handleSave($prefix, $redirect=true, $useRequired=false){
require_once('include/formbase.php');
$focus = new PrintPayment();
$focus = populateFromPost($prefix, $focus);
$focus->save();
}
}
есть ли какие-либо эксперты, которые знают это? заранее спасибо.
Ответ №1:
Сначала вам нужно перейти в выпадающий редактор в панели администратора и найти «pdf_template_type_dom». Это список, отвечающий за модули, доступные в модуле PDF — templates.
После добавления выбранного вами модуля в список вам может потребоваться перестроить приложение.
После добавления модуля создайте для него некоторый шаблон.
После этого вам нужно изменить параметры просмотра в вашем модуле, чтобы добавить кнопку, позволяющую печатать PDF. Вот пользовательский код для кнопки:
array ( 'customCode' => '<input type="button" class="button" onClick="showPopup('pdf');" value="PDF">'
Добавьте кнопку куда-нибудь и вуаля.
Я тестировал в DetailView для своих пользовательских модулей, но принцип должен быть таким же.
Комментарии:
1. Большое тебе спасибо, чувак. Я уже довольно давно ломаю голову над этой проблемой.
2. пробовал, но это работает только в detailview, когда я делаю то же самое для popupview, это не работает :/