Magento 自定义 PDF 发票

标签 magento invoice

我在 Magento 中遇到 pdf 发票问题。我想定制 pdf 发票,我用它来送货。所以我需要一个包含总价的字段(只有总价)。 我怎样才能得到这个总价?

最佳答案

Magento 在 PDF 中显示总计的方式与在购物车和结帐中显示总计的方式几乎相同;它检索总计数组,并在迭代时显示它们。

据我了解,您只想在发票 PDF 中显示总计?

处理总计的代码可以在 /app/code/core/Mage/Sales/Order/Pdf/Abstract.php 中名为 insertTotals 的函数中找到.

由于它位于 Abstract.php 文件中,该代码将用于发票、贷项凭证等,因此您不仅必须覆盖 /app/code/core/Mage/Sales/Order/Pdf/Invoice.php 文件,将其复制到 /app/code/local/Mage/Sales/Order/Pdf/Invoice.php (不要弄乱与核心!​​),但您还必须重写 insertTotals 函数并仅显示总计数据:

public function insertTotals($page, $source){
    $order = $source->getOrder();
    $totals = $this->_getTotalsList($source);
    $lineBlock = array(
        'lines'  => array(),
        'height' => 15
    );


    foreach ($totals as $total) {
        $total->setOrder($order)
            ->setSource($source);

        // only allow Grand Total to be displayed
        if ($total->getSourceField() != 'grand_total')
        {
            continue;
        }

        if ($total->canDisplay()) {
            foreach ($total->getTotalsForDisplay() as $totalData) {
                $lineBlock['lines'][] = array(
                    array(
                        'text'      => $totalData['label'],
                        'feed'      => 475,
                        'align'     => 'right',
                        'font_size' => $totalData['font_size'],
                        'font'      => 'bold'
                    ),
                    array(
                        'text'      => $totalData['amount'],
                        'feed'      => 565,
                        'align'     => 'right',
                        'font_size' => $totalData['font_size'],
                        'font'      => 'bold'
                    ),
                );
            }
        }
    }

    $page = $this->drawLineBlocks($page, array($lineBlock));
    return $page;
}

关于Magento 自定义 PDF 发票,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12789994/

相关文章:

php - 在自定义管理模块中创建网格

magento - magento 订单流程中的错误

paypal - 打印 paypal 的交易 ID 是一种好习惯吗

php - 安装时没有引号的 eav_entity_type

动态更新 Div 的 Javascript 在网站上不起作用

magento-1.5 - Magento:如何翻译 Action 标签内容?

magento - 在商店 View 级别以编程方式更改产品属性

php - 打印所有发票

quickbooks - QBXML 创建 InvoiceLine 按需添加项目