本文介绍了quickbooks sdk添加付款的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直在尝试使用quickbooks sdk添加付款,到目前为止,我能够做所有事情,但是当我将请求发送到quickbooks时,我收到一条消息,表明交易为空

Hi i've been trying to add payments using the quickbooks sdk, so far so good I'm able to do everything but when I send the request to quickbooks I got a message that the transaction is empty

这是我的示例代码:代码使用的是Quickbooks中的样本公司之一,因此,如果您将其放在c#项目中,它将立即运行

here is my sample code:the code is using one of the sample company from quickbooks so if you past this on a c# project it will run right away

   private static void CreatePayment()
        {
            //var Customers = GetCustomers();
            bool sessionBegun = false;
            bool connectionOpen = false;
            QBSessionManager sessionManager = null;

            try
            {
                //Create the session Manager object
                sessionManager = new QBSessionManager();

                //Create the message set request object to hold our request
                IMsgSetRequest requestMsgSet = sessionManager.CreateMsgSetRequest("US", 8, 0);
                requestMsgSet.Attributes.OnError = ENRqOnError.roeContinue;

                //Connect to QuickBooks and begin a session
                sessionManager.OpenConnection(@"qid", "QuickBooks Integration Demo");
                connectionOpen = true;
                sessionManager.BeginSession(@"C:\Users\Public\Documents\Intuit\QuickBooks\Sample Company Files\QuickBooks Enterprise Solutions 15.0\sample_product-based business.qbw", ENOpenMode.omMultiUser);
                //sessionManager.BeginSession("", ENOpenMode.omDontCare);
                sessionBegun = true;

                IReceivePaymentAdd Payment = requestMsgSet.AppendReceivePaymentAddRq();
                Payment.CustomerRef.ListID.SetValue("260000-933272658");
                //Payment.TotalAmount.SetValue(100.00);
                //Payment.ORApplyPayment.IsAutoApply.SetValue(true);


                ////// Create the AppliedToTxn request for the payment.

                IAppliedToTxnAdd PaymentLine = Payment.ORApplyPayment.AppliedToTxnAddList.Append();
                //// Set the invoice TxnID and amount of the payment to apply
                PaymentLine.TxnID.SetValue("8B8-933372331");
                PaymentLine.PaymentAmount.SetValue(100.00);






                //Send the request and get the response from QuickBooks
                IMsgSetResponse responseMsgSet = sessionManager.DoRequests(requestMsgSet);
                IResponse response = responseMsgSet.ResponseList.GetAt(0);
                var StatusMessage = response.StatusMessage;
                Console.WriteLine(StatusMessage);



                //IReceivePaymentAdd Done = (IReceivePaymentAdd)response.Detail;

            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                //MessageBox.Show(ex.Message, "Error");
            }
            finally
            {
                //End the session and close the connection to QuickBooks
                if (sessionBegun)
                {
                    sessionManager.EndSession();
                }
                if (connectionOpen)
                {
                    sessionManager.CloseConnection();
                }
            }
            Console.ReadLine();
        }

推荐答案

您必须发送总额才能向QuickBooks添加付款.

You must sent a total amount in order to add a payment to QuickBooks.

您有一行可以设置注释掉的总金额:

You have the line to set the total amount commented out:

//Payment.TotalAmount.SetValue(100.00);

取消注释,您就可以开始了.

Uncomment it and you're good to go.

这篇关于quickbooks sdk添加付款的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-15 23:55