Fazeel Mehar
Fazeel Mehar

Reputation: 61

Getting Issue QuickBooks Customer Notes List => QuickBooks Desktop SDK for .NET C#

I tried everything but getting issue to get Customer Notes. Its just giving one first Note but not list. I Tried with AdditionalNotesRetList but it's coming null.

using QuickBooks SDK 15 32Bit which covers all version of QuickBooks 2002 - 2022.

Code:

QBSessionManager sessionManager = null;
        bool sessionBegun = false;
        bool connectionOpen = false;
        try
        {
            sessionManager = new QBSessionManager();
            sessionManager.OpenConnection("", "Company2");
            connectionOpen = true;
            sessionManager.BeginSession(@"C:\Users\Public\Documents\Intuit\QuickBooks\Company Files\Company2.qbw", ENOpenMode.omDontCare);
            sessionBegun = true;

            IMsgSetRequest requestMsgSet = sessionManager.CreateMsgSetRequest("US", 8, 0);
            requestMsgSet.Attributes.OnError = ENRqOnError.roeContinue;

            ICustomerQuery customerQueryRq = requestMsgSet.AppendCustomerQueryRq();

            IMsgSetResponse responseMsgSet = sessionManager.DoRequests(requestMsgSet);
            IResponse response = responseMsgSet.ResponseList.GetAt(0);
            ICustomerRetList customerRetList = (ICustomerRetList)response.Detail;
            ICustomerRet customerRet = customerRetList.GetAt(0);

            // customerRet.AdditionalNotesRetList is null
            IAdditionalNotesRetList listnotes = (IAdditionalNotesRetList)customerRet.AdditionalNotesRetList;

        }
        catch (Exception ex)
        {

            throw;
        }

Upvotes: 1

Views: 118

Answers (1)

Fazeel Mehar
Fazeel Mehar

Reputation: 61

Found the solution.

Instead of using this I used XML request

IMsgSetResponse responseMsgSet = sessionManager.DoRequests(requestMsgSet);

I Used DoRequestsFromXMLString. Rest of code is same.

IMsgSetResponse responseMsgSet sessionManager.DoRequestsFromXMLString(file);

For Getting AdditionalNotesList use this

<IncludeRetElement>AdditionalNotesRet</IncludeRetElement>

XML Request

<?xml version="1.0" encoding="utf-8"?>
<?qbxml version="13.0"?>
<QBXML>

    <QBXMLMsgsRq onError = "stopOnError">

        <CustomerQueryRq>

            <ActiveStatus>All</ActiveStatus>

            <FromModifiedDate>2018-01-12T09:20:42</FromModifiedDate>

            <IncludeRetElement>ListID</IncludeRetElement>

            <IncludeRetElement>Name</IncludeRetElement>

            <IncludeRetElement>CompanyName</IncludeRetElement>

            <IncludeRetElement>CustomerFullName</IncludeRetElement>

            <IncludeRetElement>CustomerType</IncludeRetElement>

            <IncludeRetElement>IsActive</IncludeRetElement>

            <IncludeRetElement>Sublevel</IncludeRetElement>

            <IncludeRetElement>ParentRef</IncludeRetElement>

            <IncludeRetElement>JobStartDate</IncludeRetElement>

            <IncludeRetElement>JobEndDate</IncludeRetElement>

            <IncludeRetElement>AdditionalNotesRet</IncludeRetElement>

            <IncludeRetElement>Notes</IncludeRetElement>

            <IncludeRetElement>JobTypeRef</IncludeRetElement>

            <IncludeRetElement>JobStatus</IncludeRetElement>

        </CustomerQueryRq>

    </QBXMLMsgsRq>

</QBXML>

Upvotes: 1

Related Questions