Администраторы группы

  • Аватар

Модераторы группы

  • Аватар

Использование Vtiger CRM

Открытая группа активность: 2 дн., 4 ч. назад

Обсуждения функциональности, особенностей установки и настройки системы SalesPlatform Vtiger CRM.

[DevHowTo] Шаблон PDF для другого модуля (записей: 21)

← Форум группы   Все форумы
  • Аватар Иван - 1 г., 12 мес. назад:

    Нужно для Сервисных контрактов сделать печатную форму – ЗаказНаряд. Думается сделать это через Шаблоны PDF, но данного модуля нет в списке тех, для которых можно создать Шаблоны!

  • Аватар Иван - 1 г., 11 мес. назад:

    Очень нужно! PDFMaker в полной версии умеет это?

  • Аватар Сергей - 1 г., 9 мес. назад:

    В версии 6.2 в модуле «ШаблоныPDF» при создания нового шаблона можно выбрать ограниченное кол-во модулей, как туда добавить еще?
    В частности надо выводить часть полей из модуля «проектная задача»

    платный PDFмейкер тоже не для всех модулей работает
    Какие могут быть варианты решения?
    Заранее спасибо, очень надо

  • Аватар Алексей - 1 г., 9 мес. назад:

    ПДФМейкер полной версии умеет вроде все модули.

  • Аватар Алексей - 1 г., 9 мес. назад:

    Надо вносить правки в код:
    1. В файле modules/SPPDFTemplates/models/Module.php в функции getModulesList() в выборке для условия IN необходимо добавить системное имя требуемого модуля (ProjectTask)

    2. В папке модуля ProjectTask создать файл ProjectTaskPDFController и в нем определить класс SalesPlatform_ProjectTaskPDFController – определять по образу и подобию SalesPlatform_PotentialsPDFController (в папке модуля Potentials файл PotentialsPDFController.php). Для базовой функциональности (без подтягивания значения полей-ссылок на сущности) будет достаточно кода вида:

    include_once ‘includes/SalesPlatform/PDF/SPPDFController.php’;

    class SalesPlatform_ProjectTaskPDFController extends SalesPlatform_PDF_SPPDFController {

    }

    Если же требуется подтягивать значения полей-ссылок на сущности – то посмотреть как сделано в PDF-контроллере для Сделок и реализовать по аналогии.

  • Аватар Иван - 1 г., 7 мес. назад:

    Сделал базовую функциональность как написано выше, для Сервисных контрактов! Теперь для данного модуля можно создать шаблон, но при экспорте в PDF выдает:
    {«success»:false,»error»:{«code»:»Handler not found.»,»message»:»Handler not found.»}}
    Подскажите, как поправить!?

  • Аватар Олег - 1 г., 7 мес. назад:

    Помимо pdf контроллера модуля, нужно также добавить action – ExportPDF. Для примера можно взять модуль Акты: в папке modules/Act/actions лежит файл ExportPDF.php – его можно просто скопировать изменив название класса на нужный вам + скопировать pdf контроллер – modules/Act/ActPDFController.php, в этом файле вам нужно описать модель будущего документа pdf

  • Аватар Sanjar - 1 г., 7 мес. назад:

    у меня тоже ошибка точь в точь такая же как у Ивана помогите решить проблему в чем это может быть?

  • Аватар Иван - 1 г., 7 мес. назад:

    Я решил так – скопировал контроллер актов и их же ExportPDF, там изменил классы и больше пока ничего не трогал! Экспорт прошел! Сейчас пробую подставить нужные поля-ссылки!

  • Аватар Sanjar - 1 г., 7 мес. назад:

    да получилось спасибо но переменные не ставиться если найдется решение откликнитесь

  • Аватар Sanjar - 1 г., 7 мес. назад:

    да получилось спасибо но переменные не ставиться если найдется решение откликнитесь

  • Аватар Sanjar - 1 г., 7 мес. назад:

    Все теперь переменные ставиться замените 32 строку на это $this->generateEntityModel($this->focus, ‘ставится название модуля пример HelpDesk’, ‘ тоже самое но все буквы маленькие пример helpdesk_’, $model);

  • Аватар Sanjar - 1 г., 7 мес. назад:

    забыл сказать это в контроллере которую вы скопировали

  • Аватар Иван - 1 г., 7 мес. назад:

    Sanjar, у вас все переменные вашего модуля выводятся в pdf!?
    Я сделал так:
    $this->generateEntityModel($this->focus, ‘ServiceContracts’, ‘servicecontracts_’, $model);
    но, переменные не выводятся!

  • Аватар Sanjar - 1 г., 7 мес. назад:

    Да я поменял потом все выводилось корректно но только оттветсвенный выводилась не имя а id там я решил так эту функцию взял у potentialsPDFController $model->set(‘helpdesk_owner’, getUserFullName($this->focusColumnValue(‘assigned_user_id’)));