В этот момент я полностью потерялся. Я хочу создать счет-фактуру и транзакцию для определенного заказа.
здесь соответствующая часть кода:
try {
if(!$order->canInvoice()) {
Mage::throwException(Mage::helper('core')->__('Cannot create an invoice.'));
}
$invoice = Mage::getModel('sales/service_order', $order)->prepareInvoice();
if (!$invoice->getTotalQty()) {
Mage::throwException(Mage::helper('core')->__('Cannot create an invoice without products.'));
}
$invoice->setRequestedCaptureCase(Mage_Sales_Model_Order_Invoice::CAPTURE_OFFLINE);
$invoice->register();
$transactionSave = Mage::getModel('core/resource_transaction')
->addObject($invoice)
->addObject($invoice->getOrder());
$transactionSave->save();
} catch (Mage_Core_Exception $e) {
print_r($e);
}
Все работает отлично без ошибок и/или предупреждений, но в результате я могу четко видеть сгенерированный счет-фактуру на вкладке " Sales → Orders → #myorder → Invoices
", но на вкладке " Transactions
" отображается " No records found.
".
Есть ли что-то еще, что я должен сделать?
Благодарю.
Данные транзакции хранятся в sales_payment_transaction
sales_payment_transaction
website_magento.sales_payment_transaction has 24126 records
Field Type Null Key Default Extra Comment
'transaction_id' int(10) unsign NO PRI ┈ auto_increment Transaction Id
'parent_id' int(10) unsign yes MUL ┈ ┈ Parent Id
'order_id' int(10) unsign NO MUL ┈ ┈ Order Id
'payment_id' int(10) unsign NO MUL ┈ ┈ Payment Id
'txn_id' varchar(100) yes ┈ ┈ Txn Id
'parent_txn_id' varchar(100) yes ┈ ┈ Parent Txn Id
'txn_type' varchar(15) yes ┈ ┈ Txn Type
'is_closed' smallint(5) un NO 1 ┈ Is Closed
'additional_information' blob yes ┈ ┈ Additional Information
'created_at' timestamp yes ┈ ┈ Created At
Вышеупомянутый результат - код разработки, который я написал, чтобы лучше понять таблицы Magento. У меня есть форма, которая берет строку поиска и отвечает со всеми field names
и tables
с этой строкой поиска в их именах. Я делюсь своими вспомогательными функциями db с Gist здесь; Я .php
страницу .php
только для того, чтобы я запускал такие тесты.
Фактический выход вспомогательной функции ниже: