c# - Quickbooks Qbxml 创建无行项目的发票(空交易)

标签 c# wcf quickbooks qbxml

在我工作的公司,我们在开发环境中拥有以下技术 - 公司自己的 C# Web 应用程序,名为 companyABCDevapplication - 安装 Quick Books Web Connector - 安装Quick books Quickbooks Desktop 2017 Premier试用版

我的任务是创建一个接口(interface) Web 服务,该服务将由 Quick Books Web 连接器安装调用,以便与我们公司的 ABCDev 应用程序进行通信

以下是用于本地开发的技术:

  • Intuit Quickbooks Desktop 2017 Premier 试用版

  • Intuit QuickBooks Web 连接器版本 2.2.0.71

  • Microsoft Visual Studio Enterprise 2015

  • 版本 14.0.25431.01 更新 3

  • Microsoft .NET Framework版本4.6.01055

    <?xml version="1.0" encoding="utf-16"?>
    <?qbxml version="13.0"?>
    <QBXML>
        <QBXMLMsgsRq onError="stopOnError">
           <InvoiceAddRq requestID="0">
                <InvoiceAdd defMacro="TxnID:8465928136">
                    <CustomerRef>
                        <FullName>la lakers</FullName>
            </CustomerRef>       <TemplateRef>
                       <FullName>Intuit Product Invoice</FullName>
            </TemplateRef>
          </InvoiceAdd>
        </InvoiceAddRq>
      </QBXMLMsgsRq>
    </QBXML>
    

如果您查看上面的 QBXML 代码,您会注意到我们只想在 Quickbooks 中创建发票,但不包含项目列表,但是当我们的应用程序通过 Web 服务将其发送到 Quickbooks 时,它会出现以下错误和 Quickbooks Web 连接器:

<?xml version=\"1.0\" ?>
<QBXML>
       <QBXMLMsgsRs>
                  <InvoiceAddRs requestID="0" statusCode="3180" statusSeverity="Error" statusMessage="There was an error when saving a Invoice.  QuickBooks error message: The transaction is empty." />
        </QBXMLMsgsRs>
 </QBXML>

是否可以使用 QuickBooks Web Connector 版本 2.2.0.71 和 Quickbooks Desktop 2017 Premier 试用版创建不含任何发票行项目的发票?如果是,xml 应该是什么样子?有人可以提供样本吗?

最佳答案

就像手动使用 QuickBooks 时一样,您需要在行中输入一些内容才能保存发票。但是,您不需要在发票上包含项目或美元金额,您只需将信息添加到“说明”列即可。不过,您不能只包含一个空格,因此您可能需要使用句点或下划线作为描述:XML 如下所示:

<?xml version="1.0" encoding="utf-16"?>
<?qbxml version="13.0"?>
<QBXML>
    <QBXMLMsgsRq onError="stopOnError">
       <InvoiceAddRq requestID="0">
            <InvoiceAdd defMacro="TxnID:8465928136">
                <CustomerRef>
                    <FullName>la lakers</FullName>
                </CustomerRef>
                <TemplateRef>
                    <FullName>Intuit Product Invoice</FullName>
               </TemplateRef>
            <InvoiceLineAdd>
                   <Desc>.</Desc>
            </InvoiceLineAdd>
        </InvoiceLineAdd>
  </InvoiceAdd>
</InvoiceAddRq>

'

关于c# - Quickbooks Qbxml 创建无行项目的发票(空交易),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44376943/

相关文章:

python - QuickBooks 在解析提供的用于在 QB 桌面中创建采购订单的 XML 文本流时发现错误

api - 以编程方式将数据推送到 Quickbooks Online?

c# - winforms 或 wpf 应用程序的脚手架功能

c# - 截断字符串错误

sql - Windows Azure 上的 Web 应用程序和 WCF 服务部署

.net - InstallShield可以将应用程序添加到Windows防火墙异常(exception)列表吗?

c# - Xpath/C#,从多个 namespace 获取数据

c# - 具有多个 View 和一个演示者的 Winforms MVP

wcf 在没有内存分配的情况下反序列化

c# - 使用 QWC 在 Web 应用程序中列出 QuickBooks 客户信息