SugarCRM 6.5如何打印php模板?

时间:2017-09-12 05:46:37

标签: sugarcrm

我是最新的SugarCRM 6.5开发人员,我已经编写了view.detail.php文件和控制器文件。如何打印模板控制器动作json数据php模板。请帮我。我在下面创建了controller和view.details代码。

控制器

受保护的功能action_printinvoice(){

全球$ current_user,$ db,$ region;

$ db = DBManagerFactory :: getInstance();   $ id = $ _POST ['record'];

$ sql =“select gn.client_name,gn.client_address,gn.client_address_city,gn.client_address_state,gn.client_address_country,gn.client_address_postalcode,gn.id,gn.recipient_name,gn.recipient_address_city,gn.recipient_address_state,gn。 recipient_address_country,gn.recipient_address_postalcode,gn.recipient_address,gn.recipient_vat_id,gn.recipient_tax_no,gn.recipient_name,gn.invoice_number as ginvo_client_invoice_id,“           。 “gcstm。*”           。 “来自ginvo_client_invoice as gn”           。 “在gn.id = gcstm.id_c上将内联接ginvo_client_invoice_cstm作为gcstm”           。 “哪里”           。 “gn.deleted = 0和gn.id ='”。$ id。“'limit 1”;

      $result = $db->query($sql);
      $ginv_invoice_ary=array();

      while($row = $db->fetchByAssoc($result) ) {
        $ginv_invoice_ary[]=$row;
      }

      if ($ginv_invoice_ary[0]['region_c'] == 'non_eu_client_and_freelancer_provider') {
        $region = 'Non EU client and freelancer provider';
      }else if($ginv_invoice_ary[0]['region_c'] == 'non_eu_client_and_employed_provider'){
        $region = 'Non EU client and employed provider';
      }else if($ginv_invoice_ary[0]['region_c'] == 'german_client_and_freelancer_provider'){
        $region = 'German client and freelancer provider';
      }else if($ginv_invoice_ary[0]['region_c'] == 'german_client_and_employed_provider'){
        $region = 'German client and employed provider';
      }else if($ginv_invoice_ary[0]['region_c'] == 'eu_client_and_freelancer_provider'){
        $region = 'EU client and freelancer provider';
      }else if ($ginv_invoice_ary[0]['region_c'] == 'eu_client_and_employed_provider') {
        $region = 'EU client and employed provider';
      }else {
        $region = '';
      }

      echo json_encode($ginv_invoice_ary);
      $this->view = 'invoiceprint';
      //$this->view = 'custom/modules/ginvo_client_invoice/metadata/ClientInvoice.php';
      exit;

}

View.detail.php

<?php
require_once('include/MVC/View/views/view.detail.php');
// require_once('modules/ginvo_client_invoice/view/invoice.php');

class ginvo_client_invoiceViewDetail extends ViewDetail {

function ginvo_client_invoiceViewDetail(){
parent::ViewDetail();
}

function display(){

  echo $ginv_invoice_ary;
//$this->populateQuoteTemplates();
$this->displayPopupHtml();
parent::display();
}

function populateQuoteTemplates(){

  global $app_list_strings, $current_user;

  $inv_id = $this->bean->id;

  $sql = "SELECT * FROM ginvo_client_invoice WHERE deleted=0 AND id='$inv_id'";

  $res = $this->bean->db->query($sql);

  $app_list_strings[] = array();

  while($row = $this->bean->db->fetchByAssoc($res)){
    if($row){
      $app_list_strings[$row] = $row;

    }
  }
}

function displayPopupHtml(){

  global $app_list_strings,$app_strings, $mod_strings;

  $templates = array_keys($app_list_strings);

  if($templates){


    echo '  
     <script>
    function showPopup(task){
      var record = \''.$this->bean->id.'\';
      var fdata = {\'record\':record};
      var params = jQuery.param(fdata);
      $.ajax({
        type:\'post\',
        data: fdata,
      //  dataType: "json",
      //  url:\'custom/client_invoice.php?\'+params,
        //url:\'custom/modules/ginvo_client_invoice/ClientInvoice.php?\'+params,
        url:\'index.php?module=ginvo_client_invoice&action=printinvoice\',
        error:function(resp){},
        success:function(resp){
          console.log(resp);
        //  location.reload(true);
        }
      });
    // var w = window.open(\'custom/ClientInvoice.php\');
    //
    // $(w).ready(function(){
    //     w.print();
    // });

  }
   </script>';
   }
  else{
    echo '<script>
    function showPopup(task){

    alert(\''.$current_user.'\');
    }
    </script>';
    }
  }
}
?>

0 个答案:

没有答案