【问题标题】:Deleting Invoice and Bill删除发票和账单
【发布时间】:2014-09-12 11:45:24
【问题描述】:

我不知道如何使用 qbfc(使用版本 13)删除发票或账单。 有一种删除列表项的方法,但找不到类似的事务删除方法。

【问题讨论】:

  • 仅供参考,当人们删除交易而不是取消交易时,会计师会感到紧张。确保这是您的用户真正想要的。
  • 我正在整合来自另一个系统的发票和账单,当他们从原始系统中删除它时,它必须从 QB 中删除。我试图给他们一个控制屏幕,让他们可以检查和删除只需点击几个按钮即可完成交易。
  • 如果发票/账单已支付,我希望系统会抛出错误。

标签: quickbooks qbfc


【解决方案1】:

使用TxnDel 请求。

XML 示例:

<?xml version="1.0" encoding="utf-8"?>
<?qbxml version="11.0"?>
<QBXML>
  <QBXMLMsgsRq onError="stopOnError">
    <TxnDelRq>
      <!-- TxnDelType may have one of the following values: ARRefundCreditCard, Bill, BillPaymentCheck, BillPaymentCreditCard, BuildAssembly, Charge, Check, CreditCardCharge, CreditCardCredit, CreditMemo, Deposit, Estimate, InventoryAdjustment, Invoice, ItemReceipt, JournalEntry, PayrollLiabilityAdjustment [PRIVATE], PayrollPriorPayment [PRIVATE], PayrollYearToDateAdjustment [PRIVATE], PurchaseOrder, ReceivePayment, SalesOrder, SalesReceipt, SalesTaxPaymentCheck, TimeTracking, TransferInventory, VehicleMileage, VendorCredit -->
      <TxnDelType>Invoice</TxnDelType> <!-- required -->
      <TxnID>ABCD-1234</TxnID> <!-- required -->
    </TxnDelRq>
  </QBXMLMsgsRq>
</QBXML>

应该看起来像:

ITxnDel TxnDelRq= requestMsgSet.AppendTxnDelRq();

//Set field value for TxnDelType
TxnDelRq.TxnDelType.SetValue(ENTxnDelType.tdtARRefundCreditCard);

//Set field value for TxnID
TxnDelRq.TxnID.SetValue("200000-1011023419");

IMsgSetResponse responseMsgSet = sessionManager.DoRequests(requestMsgSet);

【讨论】:

  • 我认为交易 ID 与我们从添加消息中收到的交易 ID 相同。看起来不是。我们应该传递什么作为交易 ID?
  • 是的。是什么让你认为它不是?
  • 因为我得到一个状态码 3000 说事务不存在。 (我传递的是返回的 txn 编号而不是发票编号)消息是:“交易 ID”字段中的给定对象 ID“37592”无效。
  • 你传入一个 TxnNumber,而你应该传入一个 TxnID 值。因此,对 .TxnID.SetValue(...) 的调用和指示错误的错误消息都带有“事务 ID”字段。 TxnNumber != TxnID
  • 是的,我明白了,我正在存储并传回 TxnNumber,而不是 TxnID。我必须更改集成日志的那部分并开始存储 TxnId 以使其正常工作。非常感谢基思。
猜你喜欢
  • 1970-01-01
  • 2014-10-24
  • 2021-09-13
  • 1970-01-01
  • 2023-03-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-02
相关资源
最近更新 更多