2013-07-23 61 views
4

我一直试图从发票pdf中删除这一行(税:)。它不知道这将是如此艰难,花费我5个小时,我仍然坚持。从发票中删除税款pdf

其在销售发票打印按钮。在管理员 enter image description here

请帮帮忙!

我的最后一次尝试是

下方放置在if($totalInfo['source_field'] == 'tax_amount') {continue;}的foreach()

在_getTotalsList($来源)在Mage_Sales_Model_Order_Pdf_Abstract(对此我要重写后)

protected function _getTotalsList($source) 
{ 
    $totals = Mage::getConfig()->getNode('global/pdf/totals')->asArray(); 
    usort($totals, array($this, '_sortTotalsList')); 
    $totalModels = array(); 
    foreach ($totals as $index => $totalInfo) { 

if($totalInfo['source_field'] == 'tax_amount') {continue;}

 if (!empty($totalInfo['model'])) { 
      $totalModel = Mage::getModel($totalInfo['model']); 
      if ($totalModel instanceof Mage_Sales_Model_Order_Pdf_Total_Default) { 
       $totalInfo['model'] = $totalModel; 
      } else { 
       Mage::throwException(
        Mage::helper('sales')->__('PDF total model should extend Mage_Sales_Model_Order_Pdf_Total_Default') 
       ); 
      } 
     } else { 
      $totalModel = Mage::getModel($this->_defaultTotalModel); 
     } 
     $totalModel->setData($totalInfo); 
     $totalModels[] = $totalModel; 
    } 

    return $totalModels; 
} 

但它不起作用。

回答

0

从Magento的PDF去掉税款列invoice-

你需要编辑的两个文件是:

  • 要删除页眉: /app/code/local/Mage/Sales/Model/Order/Pdf/Invoice.php
  • 从每个个体rmove税订单项 /app/code/local/Mage/Sales/Model/Order/Pdf/Items/Invoice/Default.php

希望这会帮助你!

其他原因,

请参阅本links

+0

我试过,但事情是。它删除pdf中的水平线,其中包含与产品名称sku小计税等相同的信息。但它不会像我的问题(垂直行)中的图片一样从Grand Total中删除税款。那些似乎从其他地方得到处理。我已经改变了图片,请检查。 – RIK

0

无法删除此行,因为仍然总计是1.10,只是被隐藏了。如果您不想在您的产品中纳税,只需在magento配置中将其禁用即可。

转到:

Sales > Tax > Manage Tax Rules 

并设置税所有客户端组为0

0

负责的PDF显示税收汇总两种Magento的核心类是

Mage_Tax_Model_Sales_Pdf_Tax 
Mage_Sales_Model_Order_Pdf_Total_Default 

你可以根据您的意愿来运行这些课程文件以显示税务信息

0

我已经我自己也遇到过这样的问题,并且发现了一些奇怪的方法,但是今天我认为我终于找到了“正确”的解决方案。

如果你看一下layout/sales.xml,你会发现一些节点,其中包含一个名为order_totals的块,并在其中包含一个名称为tax的块。这是你的PDF中出现的那一行的责任。

我会建议“正确”的方式来删除它,然后,将其添加到您的布局/本地。xml文件:

<sales_order_printinvoice> 
    <reference name="order_totals"> 
     <remove name="tax"/> 
    </reference> 
</sales_order_printinvoice> 

(如果你没有一个布局/ local.xml中,只需创建一个。)

这从发票打印输出,这是中提到删除它这个问题。要删除它从其他地方请确保您有正确的节点名称 - 因此,例如,从为了打印客户可以从他们的订单历史记录访​​问删除它,使用:

<sales_order_print> 
    <reference name="order_totals"> 
     <remove name="tax"/> 
    </reference> 
</sales_order_print> 

.. 。等等,用于电子邮件等。只需在layout/sales.xml中查看每个发生的_totals即可查看所有受影响的节点。

0

我希望你可以在管理

System > Configuration > Sales > Tax 从选择

Orders, Invoices, Credit Memos Display Settings标签尝试设置

Display Full Tax SummaryNo。也有不同的设置。这将有所帮助。

enter image description here