<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
<channel>
<title><![CDATA[FLEXquarters.com Limited]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/]]></link>
<description />
<generator><![CDATA[Kayako case v4.66.2]]></generator>
<item>
<title><![CDATA[[QODBC-Desktop] QuickBooks and Microsoft PowerBI Desktop]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/3036]]></link>
<guid isPermaLink="false"><![CDATA[4b86ca48d90bd5f0978afa3a012503a4]]></guid>
<pubDate><![CDATA[Fri, 15 May 2020 07:39:21 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[Using Microsoft PowerBI with QuickBooks Data
Problem Description 1:
How to connect to QuickBooks Data with Power BI using QODBC Desktop?
Solutions:&nbsp;
Open the QODBC setup screen and change the QODBC Compatibility mode from "Default" to "3.8."
To ...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial, Helvetica, sans-serif;">Using Microsoft PowerBI with QuickBooks Data</span></h2>
<h3><span style="color: #0066cc; font-family: Arial, Helvetica, sans-serif;">Problem Description 1:</span></h3>
<p>How to connect to QuickBooks Data with Power BI using QODBC Desktop?</p>
<h3><span style="color: #0066cc; font-family: Arial, Helvetica, sans-serif;">Solutions:</span>&nbsp;</h3>
<p>Open the QODBC setup screen and change the QODBC Compatibility mode from "Default" to "3.8."</p>
<p>To change, please follow the steps below:</p>
<p>Start &gt;&gt; All Programs &gt;&gt; QODBC Driver for QuickBooks &gt;&gt; Configure QODBC Data Source &gt;&gt;Go To "System DSN" Tab&gt;&gt; select DSN "QuickBooks Data" &gt;&gt; click "Configure&rdquo;&gt;&gt; Switch to "Advanced" tab&gt;&gt; Navigate to "QODBC Compatibility"&gt;&gt; change to "3.8"</p>
<p>&nbsp;</p>
<p>For QODBC POS,&nbsp;select DSN "QuickBooks POS Data."</p>
<p>For QODBC Online,&nbsp;select DSN "QuickBooks Online Data."</p>
<p>&nbsp;</p>
<p align="center">&nbsp;<img src="//support.flexquarters.com/esupport/newimages/3036/QODBC Setup Screen - Advanced tab.png" alt="" /></p>
<p>Start QuickBooks and log in to the QuickBooks company file as the QuickBooks user Admin.</p>
<p>Start Microsoft PowerBI Desktop (32-bit).</p>
<p>Navigate to the "Get Data" option, and from the drop-down list, select "More."</p>
<p align="center">&nbsp;<img src="//support.flexquarters.com/esupport/newimages/3036/2. GetData-More.png" alt="" /></p>
<p>A pop-up with the title "Get Data" should appear.</p>
<p>Select "Other" --&gt; "ODBC" and click the "Connect" button.</p>
<p align="center">&nbsp;<img src="//support.flexquarters.com/esupport/newimages/3036/3. Other-connect.png" alt="" /></p>
<p>Select the "QuickBooks Data" from the Data source name (DSN) list and click the "OK" button.</p>
<p align="center">&nbsp;<img src="//support.flexquarters.com/esupport/newimages/3036/QuickBooks Data - connect directly.png" alt="" /></p>
<p>Note: If you are using QODBC version 19.0.0.333 or lower, use the "Advanced options"&gt;&gt; Write the SQL statement for the table you want to fetch data from.</p>
<p>For example, "select * from customer" and click the "OK" button.</p>
<p align="center">&nbsp;<img src="//support.flexquarters.com/esupport/newimages/3036/QuickBooks Data - Advance option.png" alt="" /></p>
<p>It would be best if you got the preview of the table. Click the "Load" button to continue.</p>
<p align="center">&nbsp;<img src="//support.flexquarters.com/esupport/newimages/3036/5. Preview.png" alt="" /></p>
<p align="center">&nbsp;<img src="//support.flexquarters.com/esupport/newimages/3036/6. Load.png" alt="" /></p>
<p>Select the fields you want to display on the report. This will add the fields to the information and display the data.</p>
<p align="center">&nbsp;<img src="//support.flexquarters.com/esupport/newimages/3036/7. FinalData.png" alt="" /></p>
<p>&nbsp;</p>
<p>If you are facing "Driver does not support this parameter," please switch QODBC, QRemote 32-Bit DSN, and QRemote 64-Bit DSN to ODBC Compatibility 3.8.</p>
<p><br />To change compatibility in QODBC, follow the path below:<br />Start &gt;&gt; All Programs &gt;&gt; QODBC Driver for QuickBooks &gt;&gt; Configure QODBC Data Source &gt;&gt;Go to "System DSN" Tab&gt;&gt; select DSN "QuickBooks Data" &gt;&gt; click "Configure&rdquo;&gt;&gt; Switch to "Advanced" tab&gt;&gt; Navigate to "QODBC Compatibility"&gt;&gt; change to "3.8"</p>
<p>For QODBC POS,&nbsp;select DSN "QuickBooks&nbsp;POS Data."</p>
<p>For QODBC&nbsp;Online,&nbsp;select DSN "QuickBooks Online Data."</p>
<p>&nbsp;</p>
<p>If you are using Power BI 64-bit, you need to change to QODBC and QRemote 64-bit clients. To change compatibility in QODBC, follow the path below:<br />Start &gt;&gt; All Programs &gt;&gt; QODBC Driver for QuickBooks &gt;&gt; Configure QODBC Data Source &gt;&gt;Go to "System DSN" Tab&gt;&gt; select DSN "QuickBooks Data" &gt;&gt; click "Configure&rdquo;&gt;&gt; Switch to "Advanced" tab&gt;&gt; Navigate to "QODBC Compatibility"&gt;&gt; change to "3.8"</p>
<p>For QODBC POS,&nbsp;select DSN "QuickBooks&nbsp;POS Data."</p>
<p>For QODBC&nbsp;Online,&nbsp;select DSN "QuickBooks Online Data."</p>
<p><br /> <br /> To change compatibility in QRemote 32-bit, follow the path below:<br />Start &gt;&gt; All Programs &gt;&gt; QODBC Driver for use with QuickBooks &gt;&gt; Configure QODBC Data Source &gt;&gt;Go to "System DSN" Tab&gt;&gt; select "QuickBooks Data QRemote" DSN &gt;&gt; click "Configure"&gt;&gt; Switch to Advanced tab and change 'ODBC Compatibility' to '3.8' and click the Apply/OK button.</p>
<p>For QODBC POS,&nbsp;select DSN "QuickBooks&nbsp;POS Data QRemote."</p>
<p>For QODBC&nbsp;Online,&nbsp;select DSN "QuickBooks Online Data QRemote."</p>
<p>&nbsp;</p>
<p><br /> <br />To change compatibility in QRemote 64-bit, follow the path below:<br />Start &gt;&gt; All Programs &gt;&gt; QODBC Driver for use with QuickBooks (64-Bit)&gt;&gt; Configure QODBC Data Source &gt;&gt;Go to "System DSN" Tab&gt;&gt; select "QuickBooks Data 64-bit QRemote" DSN &gt;&gt; click "Configure"&gt;&gt; Switch to Advanced tab and change 'ODBC Compatibility' to '3.8' and click the Apply/OK button.</p>
<p>&nbsp;</p>
<p>For QODBC POS,&nbsp;select DSN "QuickBooks&nbsp;POS Data 64-Bit QRemote."</p>
<p>For QODBC&nbsp;Online,&nbsp;select DSN "QuickBooks Online 64-Bit Data&nbsp;QRemote."</p>
<p>&nbsp;</p>
<p><br /> <br />Try connecting again. It should fix the issue you are facing.<br /> If you are using the older version of Power BI, please download the latest and try connecting with QODBC.</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - VehicleMileage table showing deleted records]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/3003]]></link>
<guid isPermaLink="false"><![CDATA[a4380923dd651c195b1631af7c829187]]></guid>
<pubDate><![CDATA[Thu, 05 Apr 2018 12:06:24 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - VehicleMileage table showing deleted records
Problem Description:
I am using QODBC for working with QuickBooks. I can delete the VehicleMileage record.&nbsp;
After deleting a record from the VehicleMileage table in QuickBooks, the de...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - VehicleMileage table showing deleted records</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>I am using QODBC for working with QuickBooks. I can delete the VehicleMileage record.&nbsp;</p>
<p class="isSelectedEnd">After deleting a record from the <strong>VehicleMileage</strong> table in QuickBooks, the deleted record continues to appear when querying the table through QODBC.</p>
<p class="isSelectedEnd">For example:</p>
<pre dir="ltr"><code dir="ltr">SELECT * FROM VehicleMileage;</code></pre>
<p>The deleted record is still returned in the query results.</p>
<p class="isSelectedEnd">However, the following UNOPTIMIZED&nbsp;query returns the correct data:</p>
<pre dir="ltr"><code dir="ltr">SELECT * FROM VehicleMileage UNOPTIMIZED;</code></pre>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>This behavior in the "VehicleMileage" table is due to a limitation in the <strong>QuickBooks SDK</strong>.</p>
<p class="isSelectedEnd">QODBC's Optimizer relies on the <strong>TxnDeleted</strong> information provided by the QuickBooks SDK to identify and remove deleted transaction records from its optimized cache. Unfortunately, the QuickBooks SDK does <strong>not</strong> report deleted <strong>VehicleMileage</strong> records through the <strong>TxnDeleted</strong> mechanism. This issue is limited to&nbsp;<strong>VehicleMileage&nbsp;</strong>table and does not affect other tables.</p>
<p class="isSelectedEnd">As a result, QODBC is unable to detect that a VehicleMileage record has been deleted, causing the Optimizer to continue returning the deleted record.</p>
<p><strong>VehicleMileage</strong>&nbsp;table issue is a QuickBooks SDK issue and is outside the control of QODBC. The issue has been reported to Intuit for resolution.</p>
<p>&nbsp;</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Resolution:</span></span></h3>
<p class="isSelectedEnd">To work around this QuickBooks SDK limitation, <strong>QODBC Version 18.0.0.326</strong> introduced a change to the <strong>VehicleMileage</strong> table.</p>
<p class="isSelectedEnd">Beginning with <strong>QODBC v18.0.0.326</strong>:</p>
<ul data-spread="false">
<li>The <strong>VehicleMileage</strong> table bypasses the Optimizer.</li>
<li>Data is retrieved directly from QuickBooks.</li>
<li>Deleted VehicleMileage records are no longer returned in query results.</li>
</ul>
<p class="isSelectedEnd">No changes to your SQL queries are required after upgrading to version <strong>18.0.0.326</strong> or later.</p>
<div><hr /></div>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Workaround for Earlier Versions:</span></span></h3>
<p class="isSelectedEnd">If you are using <strong>QODBC v18.0.0.325</strong> or any earlier version, use the <strong>UNOPTIMIZED</strong> keyword when querying the <strong>VehicleMileage</strong> table to retrieve the latest data directly from QuickBooks.</p>
<h3>Example</h3>
<pre dir="ltr"><code dir="ltr">SELECT * FROM VehicleMileage UNOPTIMIZED;</code></pre>
<p class="isSelectedEnd">Using the <strong>UNOPTIMIZED</strong> keyword bypasses the Optimizer and returns the current records from QuickBooks, including the correct deletion status.</p>
<div><hr /></div>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Summary:</span></span></h3>
<ul data-spread="false">
<li><strong>Affected Versions:</strong> QODBC v18.0.0.325 and earlier</li>
<li><strong>Cause:</strong> QuickBooks SDK does not report deleted <strong>VehicleMileage</strong> records through the <strong>TxnDeleted</strong> API.</li>
<li><strong>Fixed In:</strong> QODBC v18.0.0.326 and later</li>
<li><strong>Workaround:</strong> Use the <code dir="ltr">UNOPTIMIZED</code> keyword or upgrade to QODBC v18.0.0.326 or later.</li>
</ul>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-ALL] Troubleshooting - QODBC hung up or everything looks locked up or Application is Not Responding when fetching QuickBooks Data]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2999]]></link>
<guid isPermaLink="false"><![CDATA[a36e841c5230a79c2102036d2e259848]]></guid>
<pubDate><![CDATA[Fri, 09 Mar 2018 11:45:34 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - QODBC hung up, everything looks locked up, or the Application is Not Responding when fetching QuickBooks Data.
Problem Description:
I can access the database, but when I added another table &amp; fetch table data, it generally hung up...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - QODBC hung up, everything looks locked up, or the Application is Not Responding when fetching QuickBooks Data.</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>I can access the database, but when I added another table &amp; fetch table data, it generally hung up. Not sure if I need to change anything. Any thoughts?</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/HungUp/step1.png" alt="" /></p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>When accessing any table for the first time, QODBC will bring table-specific data to the optimizer file to increase query retrieval performance.</p>
<p>Once the optimizer is built, accessing the same table will be much faster compared to accessing it for the first time or without using the optimizer.</p>
<p>Please refer to&nbsp;<a href="http://support.flexquarters.com/esupport/index.php?/Default/Knowledgebase/Article/View/2942" target="_blank">How Optimizer Works</a> for more details.</p>
<p>If you see the QODBC icon&nbsp;(not the hourglass) in the System Tray, it means QODBC is connected to QuickBooks, and currently, there is no query executing.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/HungUp/step6.png" alt="" /></p>
<p>When QODBC hangs up, or your application goes to Not Responding mode. You can check what QODBC is performing from the Windows System Tray.</p>
<p>You will notice the QODBC icon in the Windows System Tray showing an hourglass.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/HungUp/step2.png" alt="" /></p>
<p>If you want to see what QODBC is performing, then right-click on the QODBC icon &amp; click "Driver Status Panel."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/HungUp/step3.png" alt="" /></p>
<p>QODBC will open the UAC window, and please click on "Yes" in the UAC window to open the "Driver Status Panel."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/HungUp/step4.png" alt="" /></p>
<p>There will be a status panel at the lower right corner of your screen, showing a window with information on what QODBC is working on.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/HungUp/step5.png" alt="" /></p>
<p>If you see "Waiting On QuickBooks," It means QuickBooks is taking time to process the request.</p>
<p>If you want to permanently enable the "Driver Status Panel, " refer to&nbsp;<a href="https://support.flexquarters.com/esupport/index.php?/Default/Knowledgebase/Article/View/2550" target="_blank">How to view details on what QODBC is performing / Display Driver Status / Display optimizer Status</a>.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><strong>Suggestion:</strong></p>
<p>Suppose you have a large QuickBooks company file with several years of data.<br />The QuickBooks SDK has to scan and process many records to extract data, resulting in performance issues and slowness.<br />Historical data may not be required in day-to-day transactions/reports.<br />It is advisable to reduce the size of large QuickBooks company files for better performance.<br />To reduce the size of the QuickBooks company file, you can consider archiving old data.<br />To archive old data, you can create a copy of the company file and save the company file under a new name.<br />Condense the new QuickBooks Desktop company file.<br />You should notice performance gains when using a condensed QuickBooks company file.<br />You can always refer to the archived data at any time using the QuickBooks application or QODBC.</p>
<p><br />Refer to<br /><a href="https://quickbooks.intuit.com/learn-support/en-us/help-article/data-utilities/use-condense-data-utility/L7zprPIcj_US_en_US" target="_blank">https://quickbooks.intuit.com/learn-support/en-us/help-article/data-utilities/use-condense-data-utility/L7zprPIcj_US_en_US</a><br /><a href="https://quickbooks.intuit.com/learn-support/en-uk/other-questions/quickbooks-desktop-2020-condense-data-utility/00/532124" target="_blank">https://quickbooks.intuit.com/learn-support/en-uk/other-questions/quickbooks-desktop-2020-condense-data-utility/00/532124</a><br /><a href="https://quickbooks.intuit.com/learn-support/forums/searchpage/tab/message?advanced=false&amp;allow_punctuation=true&amp;q=condense%20data" target="_blank">https://quickbooks.intuit.com/learn-support/forums/searchpage/tab/message?advanced=false&amp;allow_punctuation=true&amp;q=condense%20data</a><br /><a href="https://quickbooks.intuit.com/learn-support/en-us/other-questions/condensing-a-large-file/00/573043" target="_blank">https://quickbooks.intuit.com/learn-support/en-us/other-questions/condensing-a-large-file/00/573043</a><br /><a href="https://quickbooks.intuit.com/learn-support/en-us/other-questions/best-way-to-split-one-company-file-into-two-originally-used-for/00/810101" target="_blank">https://quickbooks.intuit.com/learn-support/en-us/other-questions/best-way-to-split-one-company-file-into-two-originally-used-for/00/810101</a></p>
<p>&nbsp;</p>
<p><strong><span style="font-family: Arial,Helvetica,sans-serif;">If the Above Solutions <span class="GINGER_SOFTWARE_mark">don't work</span>, please post a ticket to us, and we will investigate your issue further.</span></strong></p>
<p><span style="font-family: Arial,Helvetica,sans-serif;">Also, refer to the following:</span><br /> <a href="http://support.flexquarters.com/esupport/index.php?/Default/Knowledgebase/Article/View/2889" target="_blank">Troubleshooting - Cannot load Customer table records</a>.</p>
<p>&nbsp;</p>
<p><strong>Suggestion:</strong></p>
<p>Suppose you have a large company file with multiple years. QuickBooks and QuickBooks SDK would require more time to process the data required.</p>
<p>We would suggest splitting the company file to make it smaller. You can keep the historical data in one company file and the latest one in another.</p>
<p>This way, your company file will be smaller and with fewer records.</p>
<p>Refer to&nbsp;</p>
<p><a href="https://quickbooks.intuit.com/learn-support/en-us/other-questions/best-way-to-split-large-company-file/00/1081335" target="_blank">https://quickbooks.intuit.com/learn-support/en-us/other-questions/best-way-to-split-large-company-file/00/1081335</a></p>
<p><a href="https://quickbooks.intuit.com/learn-support/en-us/account-management/create-a-new-company-file-from-the-existing-company-file/00/203213">https://quickbooks.intuit.com/learn-support/en-us/account-management/create-a-new-company-file-from-the-existing-company-file/00/203213</a></p>
<p>&nbsp;</p>
<p>Keywords:&nbsp;QB odbc slow,&nbsp;multiple web queries into Excel slow running,&nbsp;Excel running background query slow,&nbsp;qodbc and Excel connection speed</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - How to Apply payment to multiple Invoice]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2998]]></link>
<guid isPermaLink="false"><![CDATA[71887f62f073a78511cbac56f8cab53f]]></guid>
<pubDate><![CDATA[Wed, 07 Mar 2018 12:18:48 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - How to Apply payment to multiple invoices
Problem Description:
How can a payment be applied to multiple invoices?
Scenario 1
- 3 Invoices are created.
- A payment is received that covers 2 of the invoices, but not necessarily in th...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - How to Apply payment to multiple invoices</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>How can a payment be applied to multiple invoices?</p>
<p>Scenario 1</p>
<p>- 3 Invoices are created.</p>
<p>- A payment is received that covers 2 of the invoices, but not necessarily in the order in which they were created.</p>
<p>How can I apply the payment to the invoices of my choosing?</p>
<p>Scenario 2</p>
<p>- 2 invoices are created</p>
<p>- payment received in an amount higher than the two invoices</p>
<p>I want to apply the payment to the two existing invoices and then use the remaining unused amount for the next Invoice that will be created later. How can I achieve this?</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>You have already received Payments &amp; Invoices created. Now, you want to apply the received payment to the desired Invoice.</p>
<p>As you want to link the Payment with the Invoice, you need to insert records in the ReceivePaymentLine table.</p>
<p>As per Scenario 1, you have 3 Invoices created, &amp; A payment is received that covers 2 of the Invoices. Now, you want to apply the amount to the desired Invoice.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/AppPmt/step10.png" alt="" /></p>
<p>Please refer to the steps below for applying the payment to multiple Invoices using QODBC. I am using the MS Access application for this example. You can use your desired application.</p>
<p>First, please create a new MS Access database &amp; link the&nbsp;<strong>Invoice, InvoiceLine, receive payment, and ReceivePaymentLine tables</strong>.</p>
<p>Please refer to&nbsp;<a href="http://support.flexquarters.com/esupport/index.php?/Default/Knowledgebase/Article/View/2470" target="_blank">How to Use QODBC with Microsoft Access</a> for more details.</p>
<p>After linking the table, we need to execute the query in the MS Access query editor:</p>
<p>MS Access &gt;&gt; Create tab &gt;&gt; Query Design &gt;&gt; It should pop up for choosing a table. Please click the "Close" button &amp; click on "SQL" from the left top corner below the File menu.</p>
<p>Here, we first get the TxnID of the ReceivePayment using the below sample query.</p>
<p>SELECT TxnID, CustomerRefListID, RefNumber, TotalAmount FROM ReceivePayment where CustomerRefFullName = 'Easley, Paula.'</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/AppPmt/step1.png" alt="" /></p>
<p>We have details for Customer payments.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/AppPmt/step2.png" alt="" /></p>
<p>Now, we will get the Invoice details from the InvoiceLine table using the below sample query.</p>
<p>SELECT TxnID, CustomerRefListID, RefNumber, SubTotal FROM InvoiceLine where CustomerRefFullName='Easley, Paula'</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/AppPmt/step3.png" alt="" /></p>
<p>We have details for Customer Invoices.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/AppPmt/step4.png" alt="" /></p>
<p>We will use the above details &amp; apply a payment to the 2 Invoice# 1108 &amp; 1109 using the below sample query.</p>
<p>INSERT INTO ReceivePaymentLine (TxnID, AppliedToTxnTxnID, AppliedToTxnPaymentAmount) VALUES ('2437F-1639567954', '24373-1639567874', 140.00 )</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/AppPmt/step5.png" alt="" /></p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/AppPmt/step6.png" alt="" /></p>
<p>The payment was applied to Invoice# 1108.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/AppPmt/step7.png" alt="" /></p>
<p>We will apply a payment to Invoice# 1109 using the sample query below.</p>
<p>INSERT INTO ReceivePaymentLine (TxnID, AppliedToTxnTxnID, AppliedToTxnPaymentAmount) VALUES ('2437F-1639567954', '24379-1639567907', 90.00 )</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/AppPmt/step8.png" alt="" /></p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/AppPmt/step6.png" alt="" /></p>
<p>The payment was applied to Invoice# 1109.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/AppPmt/step9.png" alt="" /></p>
<p><strong>Related Data Location:</strong></p>
<p>TxnID = TxnID from the ReceivePayment table for the payment you received.</p>
<p>AppliedToTxnTxnID = TxnID from the Invoice table for which you want to apply the payment.</p>
<p>AppliedToTxnPaymentAmount = Payment Amount that you want to apply to the Invoice.</p>
<p>Also, when the payment amount is higher than the Invoice amount &amp; you have applied it to the Invoice. The remaining payment will be shown in the UnusedPayment or UnusedCredits fields of the ReceivePayment &amp; ReceivePaymentLine table.</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] How to use M-Files with QODBC]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2997]]></link>
<guid isPermaLink="false"><![CDATA[a0b83c02d720415dada82e08bc09e9f3]]></guid>
<pubDate><![CDATA[Wed, 14 Feb 2018 12:39:05 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[How to use M-Files with QODBC
Problem Description:
How to use M-Files with QODBC?
Solution:
Please follow the steps below for using M-Files with QODBC.
1. Open M-Files Admin.

2. Expand the desired connection to the M-Files Server in the left-side ...]]></description>
<content:encoded><![CDATA[<h2><strong><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">How to use M-Files with QODBC</span></strong></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>How to use M-Files with QODBC?</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>Please follow the steps below for using M-Files with QODBC.</p>
<p>1. Open M-Files Admin.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MFiles/step1.png" alt="" /></p>
<p>2. Expand the desired connection to the M-Files Server in the left-side tree view.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MFiles/step2.png" alt="" /></p>
<p>3. In the left-side tree view, expand the document vault of your choice.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MFiles/step3.png" alt="" /></p>
<p>4. Still, expand the Metadata Structure (Flat View) node in the left-side tree view.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MFiles/step4.png" alt="" /></p>
<p>5. Select the Value Lists node for defining a value list to use an external database connection. The value list is opened in the right pane.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MFiles/step5.png" alt="" /></p>
<p>6. In the right-pane listing, right-click the value list of your choice and select "Properties" from the context menu.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MFiles/step6.png" alt="" /></p>
<p>7. Select the "Connection to External Database" tab &amp; Enable the option "Use a connection to an external database to import and modify objects that reside in the external database." Click the "Define..." button next to the OLE DB connection string (from the server) field.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MFiles/step7.png" alt="" /></p>
<p>8. On the Provider tab, select "Microsoft OLE DB Provider for ODBC Driver" from the list and click "Next &gt;&gt;."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MFiles/step8.png" alt="" /></p>
<p>9. Select "QuickBooks Data" DSN from the dropdown list &amp; click "Test Connection."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MFiles/step9.png" alt="" /></p>
<p>Please Note: If you have a 64-bit application, you must use QRemote 64-bit DSN "<strong>QuickBooks Data 64-bit QRemote</strong>".<br />Please refer to how<a href="http://support.flexquarters.com/esupport/index.php?/Default/Knowledgebase/Article/View/2436">&nbsp;to configure QRemote</a>.</p>
<p>Test Connection successful.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MFiles/step10.png" alt="" /></p>
<p>10. Click "OK" to close the Data Link Properties dialog.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MFiles/step11.png" alt="" /></p>
<p>11. Back on the "Connection to External Database" tab, enter the SELECT statement for retrieving properties from the database to the SELECT statement field, &amp; Click the "Refresh Columns" button to fetch the data defined in your SELECT statement to the Columns listing.</p>
<p>For Example Select * from Customer</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MFiles/step12.png" alt="" /></p>
<p>12. Map the Source Column properties with properties in your M-Files vault (listed in the Target Property column).</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MFiles/step13.png" alt="" /></p>
<p>QuickBooks Data is added to M-Files using QODBC. You can make changes to the application as per your requirement.</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - Excel only returning Amount_1 and not Amount_1 through Amount_12.]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2992]]></link>
<guid isPermaLink="false"><![CDATA[24b43fb034a10d78bec71274033b4096]]></guid>
<pubDate><![CDATA[Mon, 22 Jan 2018 09:22:51 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - Excel only returns Amount_1 and not Amount_1 through Amount_12.
Problem Description:
I am working in Excel. I have set up three pass-through queries and had them work on referencing cells for the DateFrom and DateTo parameters. The qu...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - Excel only returns Amount_1 and not Amount_1 through Amount_12.</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>I am working in Excel. I have set up three pass-through queries and had them work on referencing cells for the DateFrom and DateTo parameters. The queries were SummarizeColumnsBy by Month.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/Amt12/step1.png" alt="" /></p>
<p>The queries suddenly stopped working, only returning Amount_1 and not Amount_1 through Amount_12.</p>
<p>If I manually put the date in the command text, all 12 months will return.</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>Please ensure that you pass both the dates (i.e., start date and end date) in the parameter value. There should be 12 months difference between the two dates to get the 12-month amount.</p>
<p>Also, please ensure that you pass the date in the correct format through the parameter.</p>
<p>Please use the format below &amp; check again:</p>
<p>YYYY-MM-DD</p>
<p>For Example:</p>
<p>DateFrom: 2017-01-01</p>
<p>DateTo: 2017-12-31</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - Serial Number/Lot Number Quantity On Hand does not match with the report in QuickBooks.]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2990]]></link>
<guid isPermaLink="false"><![CDATA[f6b5f8c32c65fee991049a55dc97d1ce]]></guid>
<pubDate><![CDATA[Fri, 19 Jan 2018 09:09:58 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - Serial Number/Lot Number Quantity On Hand does not match the QuickBooks report.
Problem Description:
I recently ran into an issue when querying the inventory for each lot number. In QuickBooks, there is a report called "Lot Numbers in...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - Serial Number/Lot Number Quantity On Hand does not match the QuickBooks report.</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>I recently ran into an issue when querying the inventory for each lot number. In QuickBooks, there is a report called "Lot Numbers in Stock." You can click on the Lot Numbers on that report, and it opens a Quick View that shows the On Hand QTY for each Lot Number.</p>
<p>I've searched through the tables with the help of QODBC, and the only table I could find that appears to offer the information was the "BuildAssembly" table. However, the Quantity On Hand does not match what shows when I run the report in QuickBooks.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/LotNum/step1.png" alt="" /></p>
<p>Could you please point me in the right direction to where I can query this information using QODBC?</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>I am not sure how the "Lot Number In Stock" or "Serial Number In Stock" report is showing QuantityOnHand &amp; which table it is using. You can verify QuantityOnHand from BuildAssembly through QuickBooks UI &amp; QODBC, which will be identical.</p>
<p>The BuildAssembly table will show QuantityOnHand details when the assembly was built. It will not conduct the current Quantity as shown in the report.</p>
<p>Also, I'm sorry to inform you that the "Lot Number In Stock" or "Serial Number In Stock" report is not available through the Intuit SDK, so they are not available through QODBC.</p>
<p>QODBC is an ODBC driver for QuickBooks. It uses the QuickBooks SDK to communicate with QuickBooks, which means if Intuit doesn't expose one feature to the application in the SDK, QODBC cannot do it either.</p>
<p>Refer: <a href="https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2717" target="_blank">How to export QuickBooks data not available in QODBC</a></p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - How would I produce a transaction list that includes the class field.]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2989]]></link>
<guid isPermaLink="false"><![CDATA[5848ad959570f87753a60ce8be1567f3]]></guid>
<pubDate><![CDATA[Fri, 19 Jan 2018 09:03:35 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - How would I produce a transaction list that includes the class field? 
Problem Description:
I am working on the transactions table, but I do not see a "class" field. How would I produce a transaction list that includes the class field...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - How would I produce a transaction list that includes the class field? </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>I am working on the transactions table, but I do not see a "class" field. How would I produce a transaction list that includes the class field?</p>
<p>For example, I can run a GL report in QBE 18 that includes the class field and wish to do the same with transactions.</p>
<p>What tables have the class field?</p>
<p>Could you please point me in the right direction to where I can query this information using QODBC?</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>I'm sorry to inform you that the Class information in the Transaction table is not available through the Intuit SDK, so they are not available through QODBC.</p>
<p>QODBC is an ODBC driver for QuickBooks. It uses the QuickBooks SDK to communicate with QuickBooks, which means if Intuit doesn't expose one feature to the application in the SDK, QODBC cannot do it either.</p>
<p>Refer: <a href="https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2717" target="_blank">How to export QuickBooks data not available in QODBC</a></p>
<p>You can use reports such as GeneralLedger, CustomTxnDetail, TxnDetailByAccount, TxnListByDate, etc.</p>
<p>For Example:</p>
<p>sp_report GeneralLedger shows Blank, TxnType, Date, RefNumber, Name, Class, Memo, SplitAccount, Debit, Credit, RunningBalance parameters DateMacro = 'All.'</p>
<p>Refer to how<a href="https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2369" target="_blank">&nbsp;to use the QuickBooks Reporting Engine with QODBC</a> for more details.</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - How can I extract Budget data]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2986]]></link>
<guid isPermaLink="false"><![CDATA[769675d7c11f336ae6573e7e533570ec]]></guid>
<pubDate><![CDATA[Tue, 16 Jan 2018 11:10:32 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - How can I extract Budget data
Problem Description:
I'm trying to extract QuickBooks budget data to SQL for reporting purposes. However, I don't see any tables that would hold the budget. My research is telling me this may not be possi...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - How can I extract Budget data</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>I'm trying to extract QuickBooks budget data to SQL for reporting purposes. However, I don't see any tables that would hold the budget. My research is telling me this may not be possible. Can someone please tell me how I can extract Budget data?</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>We are sorry to inform you that the Budget table is unavailable through the Intuit SDK, so budget-related information is unavailable through QODBC.</p>
<p>QODBC is an ODBC driver for QuickBooks. QODBC uses the Intuit QuickBooks SDK to communicate with QuickBooks, which means if Intuit doesn't expose the field/table/feature to the application in the SDK, QODBC cannot do it either.</p>
<p>Refer: <a href="https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2717" target="_blank">How to export QuickBooks data not available in QODBC</a></p>
<p>You can refer Budget related reports for Budget details.</p>
<p>You can refer to the reports below.</p>
<p>sp_report BalanceSheetBudgetOverview show Amount_Title, Label, Amount parameters FiscalYear = 2015, BudgetCriterion = 'Accounts', SummarizeBudgetColumnsBy = 'Date', SummarizeBudgetRowsBy = 'Account'</p>
<p>sp_report BalanceSheetBudgetVsActual show Amount_Title, Budget_Title, Difference_Title, Percent_Title, Text, Label, Amount, Budget, Difference, Percent parameters FiscalYear = 2015, BudgetCriterion = 'Accounts,' SummarizeBudgetColumnsBy = 'Date,' SummarizeBudgetRowsBy = 'Account'</p>
<p>sp_report ProfitAndLossBudgetOverview show Amount_Title, Text, Label, Amount parameters FiscalYear = 2015, BudgetCriterion = 'Accounts', SummarizeBudgetColumnsBy = 'Date', SummarizeBudgetRowsBy = 'Account'</p>
<p>sp_report ProfitAndLossBudgetPerformance show Amount_Title, Text, Label, Amount parameters FiscalYear = 2003, BudgetCriterion = 'Accounts', SummarizeBudgetColumnsBy = 'Date', SummarizeBudgetRowsBy = 'Account'</p>
<p>sp_report ProfitAndLossBudgetVsActual show Amount_Title, Budget_Title, Difference_Title, Percent_Title, Text, Label, Amount, Budget, Difference, Percent parameters FiscalYear = 2015, BudgetCriterion = 'Accounts,' SummarizeBudgetColumnsBy = 'Date,' SummarizeBudgetRowsBy = 'Account'</p>
<p>Refer to how<a href="https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2369" target="_blank">&nbsp;to use the QuickBooks Reporting Engine with QODBC</a> for more details.</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - How can I combine two reports and get the report of transactions of a customer.]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2985]]></link>
<guid isPermaLink="false"><![CDATA[275d7fb2fd45098ad5c3ece2ed4a2824]]></guid>
<pubDate><![CDATA[Tue, 26 Dec 2017 10:31:18 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - How can I combine two reports and get a customer's transactions report?
Problem Description:
I need a report by a particular Customer showing the beginning balance, payments made by the Customer, invoices with details showing the expe...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - How can I combine two reports and get a customer's transactions report?</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>I need a report by a particular Customer showing the beginning balance, payments made by the Customer, invoices with details showing the expense, and the ending balance. QuickBooks does not provide enough detail in the customer statements so parents can read them. I would also like to be able to email the statement to an email address.</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>You need to query different tables &amp; reports to get the required data. Once you get the data, you need to combine all the data.</p>
<p>You need to query the CustomerBalanceDetail report &amp; InvoiceLine, CreditMemoLine, ReceivePaymentLine, and CheckExpenseLine tables for a particular Customer.</p>
<p>You can use MS Excel for this &amp; can write VBA code in MS Excel which will query the above table &amp; report for particular Customers &amp; store results on a separate sheet. Once you get the impact on the separate sheet, you need to combine all sheet data &amp; paste it into the new sheet.</p>
<p>We have created seven full sheets (i.e., Sheet0 to Sheet6). Sheet 0 will be the input form, &amp; Sheet1 to 5 will contain data from the CustomerBalanceDetail report &amp; InvoiceLine, CreditMemoLine, ReceivePaymentLine, and CheckExpenseLine tables for particular Customers, and Sheet 6 will combine data from Sheets 1 to 5. We have created a sample MS Excel macro that will fetch the required data.</p>
<p>Sheet 0 will be the input form. To use this, you need to enter Customer FullName, StartDate &amp; EndDate &amp; click on the "Generate Report" button. In this example, I have used "Abercrombie, Kristy: Remodel Bathroom" as Customer FullName &amp; 1/1/2016 as the start date, and 12/31/2022 as the end date.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CombineReport/step1.png" alt="" /></p>
<p>On clicking the "Generate Report" button, we will query the report &amp; table for a particular Customer &amp; store the results in Sheet1 to Sheet5.</p>
<p>Sheet 1 will contain the result of the CustomerBalanceDetail report.</p>
<p>The query used for fetching data for Sheet1 is:</p>
<p>sp_report CustomerBalanceDetail show Text, Blank, TxnType as Type, Date, RefNumber as Num, Account, Amount, RunningBalance as Balance parameters DateFrom = {d'2016-01-01'}, DateTo = {d'2022-12-31'}, EntityFilterFullNames= 'Abercrombie, Kristy: Remodel Bathroom.'</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CombineReport/step2.png" alt="" /></p>
<p>Sheet 2 will contain the result of the InvoiceLine report.</p>
<p>The query used for fetching data for Sheet2 is:</p>
<p>Select CustomerRefFullName, TxnDate, RefNumber, TermsRefFullName, AppliedAmount, Memo, InvoiceLineItemRefFullName, InvoiceLineDesc, InvoiceLineQuantity, InvoiceLineRate, InvoiceLineAmount from InvoiceLine where TxnDate &gt;= {d'2016-01-01'} and TxnDate &lt;= {d'2022-12-31'} and CustomerRefFullName= 'Abercrombie, Kristy: Remodel Bathroom.'</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CombineReport/step3.png" alt="" /></p>
<p>Sheet 3 will contain the result of the CreditMemoLine report.</p>
<p>The query used for fetching data for Sheet3 is:</p>
<p>Select CustomerRefFullName, TxnDate, RefNumber, TermsRefFullName, TotalAmount, Memo, CreditMemoLineItemRefFullName, CreditMemoLineDesc, CreditMemoLineQuantity, CreditMemoLineRate, CreditMemoLineAmount from CreditMemoLine where TxnDate &gt;= {d'2016-01-01'} and TxnDate &lt;= {d'2022-12-31'} and CustomerRefFullName= 'Abercrombie, Kristy: Remodel Bathroom.'</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CombineReport/step4.png" alt="" /></p>
<p>Sheet 4 will contain the result of the ReceivePaymentLine report.</p>
<p>The query used for fetching data for Sheet4 is:</p>
<p>Select CustomerRefFullName, TxnDate, RefNumber,'", ' TotalAmount, Memo, UnusedPayment, UnusedCredits, AppliedToTxnTxnID, AppliedToTxnPaymentAmount, AppliedToTxnTxnType, AppliedToTxnTxnDate, AppliedToTxnRefNumber, AppliedToTxnBalanceRemaining from ReceivePaymentLine where TxnDate &gt;= {d'2016-01-01'} and TxnDate &lt;= {d'2022-12-31'} and CustomerRefFullName= 'Abercrombie, Kristy: Remodel Bathroom.'</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CombineReport/step5.png" alt="" /></p>
<p>Sheet 5 will contain the result of the CheckExpenseLine report.</p>
<p>The query used for fetching data for Sheet5 is:</p>
<p>Select PayeeEntityRefFullName, TxnDate, RefNumber,'", 'Amount, Memo from CheckExpenseLine where TxnDate &gt;= {d'2016-01-01'} and TxnDate &lt;= {d'2022-12-31'} and PayeeEntityRefFullName= 'Abercrombie, Kristy: Remodel Bathroom.'</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CombineReport/step6.png" alt="" /></p>
<p><strong>Note:</strong> The ReceivePaymentLine &amp; CheckExpenseLine table does not have the TermsRefFullName field. To maintain the data structure in Sheet6, which contains combined data, I have added '" ' in the query of ReceivePaymentLine &amp; CheckExpenseLine.</p>
<p>Now, we have the required data in Sheet1 to Sheet5. We will combine these data into Sheet 6.</p>
<p>Sheet 6 will contain the combined result of Sheets 1 to 5.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CombineReport/step7.png" alt="" /></p>
<p>Please <a href="//support.flexquarters.com/esupport/newimages/CombineReport/CustomerBalanceDetails.zip">click here</a>&nbsp;to download the Sample Macro.</p>
<h3><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Application Source Code:</span></h3>
<p><!-- HTML generated using hilite.me --></p>
<div style="background: #ffffff; overflow: auto; width: auto; border: solid gray; border-width: .1em .1em .1em .8em; padding: .2em .6em;">
<pre style="margin: 0; line-height: 125%;"><span style="color: #008800; font-weight: bold;">Private</span> <span style="color: #008800; font-weight: bold;">Sub</span> <span style="color: #0066bb; font-weight: bold;">CommandButton1_Click</span>()

<span style="color: #008800; font-weight: bold;">Dim</span> cn <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">Object</span>
<span style="color: #008800; font-weight: bold;">Dim</span> rs <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">Object</span>

<span style="color: #008800; font-weight: bold;">Dim</span> strCon <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>
<span style="color: #008800; font-weight: bold;">Dim</span> strSQL, CustName <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>, Date1 <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">Date</span>, Date2 <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">Date</span>

<span style="color: #008800; font-weight: bold;">Dim</span> mainworkBook <span style="color: #000000; font-weight: bold;">As</span> Workbook

<span style="color: #008800; font-weight: bold;">Set</span> mainworkBook <span style="color: #333333;">=</span> ActiveWorkbook

strCon <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"DSN=Quickbooks Data;OLE DB Services=-2;"</span>

<span style="color: #008800; font-weight: bold;">Set</span> cn <span style="color: #333333;">=</span> CreateObject(<span style="background-color: #fff0f0;">"ADODB.Connection"</span>)
cn.Open strCon
<span style="color: #008800; font-weight: bold;">Dim</span> a <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>

Date1 <span style="color: #333333;">=</span> ThisWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet0"</span>).Cells(<span style="color: #0000dd; font-weight: bold;">7</span>, <span style="color: #0000dd; font-weight: bold;">3</span>).Value
Date2 <span style="color: #333333;">=</span> ThisWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet0"</span>).Cells(<span style="color: #0000dd; font-weight: bold;">8</span>, <span style="color: #0000dd; font-weight: bold;">3</span>).Value
CustName <span style="color: #333333;">=</span> ThisWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet0"</span>).Cells(<span style="color: #0000dd; font-weight: bold;">6</span>, <span style="color: #0000dd; font-weight: bold;">3</span>).Value

strSQL <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">" sp_report CustomerBalanceDetail show Text, Blank, TxnType as Type, Date, RefNumber as Num, Account,Amount, RunningBalance as Balance "</span> <span style="color: #333333;">&amp;</span> _
<span style="background-color: #fff0f0;">"parameters DateFrom = "</span> <span style="color: #333333;">&amp;</span> fncqbDate(Date1) <span style="color: #333333;">&amp;</span> <span style="background-color: #fff0f0;">", DateTO = "</span> <span style="color: #333333;">&amp;</span> fncqbDate(Date2) <span style="color: #333333;">&amp;</span> <span style="background-color: #fff0f0;">", EntityFilterFullNames=  '"</span> <span style="color: #333333;">&amp;</span> CustName <span style="color: #333333;">&amp;</span> <span style="background-color: #fff0f0;">"'  "</span>


<span style="color: #008800; font-weight: bold;">Set</span> rs <span style="color: #333333;">=</span> CreateObject(<span style="background-color: #fff0f0;">"ADODB.RECORDSET"</span>)
rs.activeconnection <span style="color: #333333;">=</span> cn
rs.Open strSQL
Sheets(<span style="background-color: #fff0f0;">"Sheet1"</span>).Cells.ClearContents
Sheets(<span style="background-color: #fff0f0;">"Sheet1"</span>).Cells.ClearFormats
Sheet1.Range(<span style="background-color: #fff0f0;">"A1"</span>).CopyFromRecordset rs

rs.Close

strSQL <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"select CustomerRefFullName,TxnDate,RefNumber,TermsRefFullName,AppliedAmount,Memo,InvoiceLineItemRefFullName,InvoiceLineDesc,InvoiceLineQuantity,InvoiceLineRate,InvoiceLineAmount from InvoiceLine where TxnDate &gt;= "</span> <span style="color: #333333;">&amp;</span> fncqbDate(Date1) <span style="color: #333333;">&amp;</span> <span style="background-color: #fff0f0;">" and TxnDate &lt;= "</span> <span style="color: #333333;">&amp;</span> fncqbDate(Date2) <span style="color: #333333;">&amp;</span> <span style="background-color: #fff0f0;">" and CustomerRefFullName= '"</span> <span style="color: #333333;">&amp;</span> CustName <span style="color: #333333;">&amp;</span> <span style="background-color: #fff0f0;">"'"</span>

<span style="color: #008800; font-weight: bold;">Set</span> rs <span style="color: #333333;">=</span> CreateObject(<span style="background-color: #fff0f0;">"ADODB.RECORDSET"</span>)
rs.activeconnection <span style="color: #333333;">=</span> cn
rs.Open strSQL
Sheets(<span style="background-color: #fff0f0;">"Sheet2"</span>).Cells.ClearContents
Sheets(<span style="background-color: #fff0f0;">"Sheet2"</span>).Cells.ClearFormats
Sheet2.Range(<span style="background-color: #fff0f0;">"A1"</span>).CopyFromRecordset rs

rs.Close

strSQL <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"select CustomerRefFullName,TxnDate,RefNumber,TermsRefFullName,TotalAmount,Memo,CreditMemoLineItemRefFullName,CreditMemoLineDesc,CreditMemoLineQuantity,CreditMemoLineRate,CreditMemoLineAmount from CreditMemoLine where TxnDate &gt;= "</span> <span style="color: #333333;">&amp;</span> fncqbDate(Date1) <span style="color: #333333;">&amp;</span> <span style="background-color: #fff0f0;">" and TxnDate &lt;= "</span> <span style="color: #333333;">&amp;</span> fncqbDate(Date2) <span style="color: #333333;">&amp;</span> <span style="background-color: #fff0f0;">" and CustomerRefFullName= '"</span> <span style="color: #333333;">&amp;</span> CustName <span style="color: #333333;">&amp;</span> <span style="background-color: #fff0f0;">"'"</span>

<span style="color: #008800; font-weight: bold;">Set</span> rs <span style="color: #333333;">=</span> CreateObject(<span style="background-color: #fff0f0;">"ADODB.RECORDSET"</span>)
rs.activeconnection <span style="color: #333333;">=</span> cn
rs.Open strSQL
Sheets(<span style="background-color: #fff0f0;">"Sheet3"</span>).Cells.ClearContents
Sheets(<span style="background-color: #fff0f0;">"Sheet3"</span>).Cells.ClearFormats
Sheet3.Range(<span style="background-color: #fff0f0;">"A1"</span>).CopyFromRecordset rs

rs.Close

strSQL <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"select CustomerRefFullName,TxnDate,RefNumber,'""',TotalAmount,Memo,UnusedPayment,UnusedCredits,AppliedToTxnTxnID,AppliedToTxnPaymentAmount,AppliedToTxnTxnType,AppliedToTxnTxnDate,AppliedToTxnRefNumber,AppliedToTxnBalanceRemaining from ReceivePaymentLine where TxnDate &gt;= "</span> <span style="color: #333333;">&amp;</span> fncqbDate(Date1) <span style="color: #333333;">&amp;</span> <span style="background-color: #fff0f0;">" and TxnDate &lt;= "</span> <span style="color: #333333;">&amp;</span> fncqbDate(Date2) <span style="color: #333333;">&amp;</span> <span style="background-color: #fff0f0;">" and CustomerRefFullName= '"</span> <span style="color: #333333;">&amp;</span> CustName <span style="color: #333333;">&amp;</span> <span style="background-color: #fff0f0;">"'"</span>

<span style="color: #008800; font-weight: bold;">Set</span> rs <span style="color: #333333;">=</span> CreateObject(<span style="background-color: #fff0f0;">"ADODB.RECORDSET"</span>)
rs.activeconnection <span style="color: #333333;">=</span> cn
rs.Open strSQL
Sheets(<span style="background-color: #fff0f0;">"Sheet4"</span>).Cells.ClearContents
Sheets(<span style="background-color: #fff0f0;">"Sheet4"</span>).Cells.ClearFormats
Sheet5.Range(<span style="background-color: #fff0f0;">"A1"</span>).CopyFromRecordset rs
rs.Close

strSQL <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"select PayeeEntityRefFullName,TxnDate,RefNumber,'""' ,Amount,Memo from CheckExpenseLine where TxnDate &gt;= "</span> <span style="color: #333333;">&amp;</span> fncqbDate(Date1) <span style="color: #333333;">&amp;</span> <span style="background-color: #fff0f0;">" and TxnDate &lt;= "</span> <span style="color: #333333;">&amp;</span> fncqbDate(Date2) <span style="color: #333333;">&amp;</span> <span style="background-color: #fff0f0;">" and PayeeEntityRefFullName= '"</span> <span style="color: #333333;">&amp;</span> CustName <span style="color: #333333;">&amp;</span> <span style="background-color: #fff0f0;">"'"</span>

<span style="color: #008800; font-weight: bold;">Set</span> rs <span style="color: #333333;">=</span> CreateObject(<span style="background-color: #fff0f0;">"ADODB.RECORDSET"</span>)
rs.activeconnection <span style="color: #333333;">=</span> cn
rs.Open strSQL
Sheets(<span style="background-color: #fff0f0;">"Sheet5"</span>).Cells.ClearContents
Sheets(<span style="background-color: #fff0f0;">"Sheet5"</span>).Cells.ClearFormats
Sheet6.Range(<span style="background-color: #fff0f0;">"A1"</span>).CopyFromRecordset rs

rs.Close
cn.Close

<span style="color: #008800; font-weight: bold;">Set</span> cn <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">Nothing</span>


Sheets(<span style="background-color: #fff0f0;">"Sheet6"</span>).Cells.ClearContents
Sheets(<span style="background-color: #fff0f0;">"Sheet6"</span>).Cells.ClearFormats
ActiveWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet1"</span>).Select

  <span style="color: #008800; font-weight: bold;">Dim</span> N <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">Long</span>
  N <span style="color: #333333;">=</span> Cells(<span style="color: #0000dd; font-weight: bold;">1</span>, <span style="color: #0000dd; font-weight: bold;">8</span>).End(xlDown).Row
  <span style="color: #008800; font-weight: bold;">If</span> (N <span style="color: #333333;">&gt;</span> <span style="color: #0000dd; font-weight: bold;">100000</span>) <span style="color: #008800; font-weight: bold;">Then</span> N <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">1</span>
  <span style="color: #008800; font-weight: bold;">Set</span> DT <span style="color: #333333;">=</span> ThisWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet1"</span>).Range(<span style="background-color: #fff0f0;">"A1:H2"</span>)
  DT.Select
  Selection.Copy

  ActiveWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet6"</span>).Select
  lMaxRows <span style="color: #333333;">=</span> Cells(Rows.Count, <span style="background-color: #fff0f0;">"A"</span>).End(xlUp).Row
  ThisWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet6"</span>).Range(<span style="background-color: #fff0f0;">"A"</span> <span style="color: #333333;">&amp;</span> lMaxRows <span style="color: #333333;">+</span> <span style="color: #0000dd; font-weight: bold;">0</span>).Select
  Selection.PasteSpecial Paste:<span style="color: #333333;">=</span>xlPasteValues

ActiveWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet2"</span>).Select

  
  N <span style="color: #333333;">=</span> ThisWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet2"</span>).Cells(<span style="color: #0000dd; font-weight: bold;">1</span>, <span style="color: #0000dd; font-weight: bold;">1</span>).End(xlDown).Row
  <span style="color: #008800; font-weight: bold;">If</span> (N <span style="color: #333333;">&gt;</span> <span style="color: #0000dd; font-weight: bold;">100000</span>) <span style="color: #008800; font-weight: bold;">Then</span> N <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">1</span>
  <span style="color: #008800; font-weight: bold;">Set</span> DT <span style="color: #333333;">=</span> ThisWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet2"</span>).Range(<span style="background-color: #fff0f0;">"A1:N"</span> <span style="color: #333333;">&amp;</span> N)
  DT.Select
  Selection.Copy

  ActiveWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet6"</span>).Select
  lMaxRows <span style="color: #333333;">=</span> Cells(Rows.Count, <span style="background-color: #fff0f0;">"A"</span>).End(xlUp).Row
  ThisWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet6"</span>).Range(<span style="background-color: #fff0f0;">"A"</span> <span style="color: #333333;">&amp;</span> lMaxRows <span style="color: #333333;">+</span> <span style="color: #0000dd; font-weight: bold;">2</span>).Select
  Selection.PasteSpecial Paste:<span style="color: #333333;">=</span>xlPasteValues


ActiveWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet3"</span>).Select
  
  N <span style="color: #333333;">=</span> ThisWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet3"</span>).Cells(<span style="color: #0000dd; font-weight: bold;">1</span>, <span style="color: #0000dd; font-weight: bold;">1</span>).End(xlDown).Row
  <span style="color: #008800; font-weight: bold;">If</span> (N <span style="color: #333333;">&gt;</span> <span style="color: #0000dd; font-weight: bold;">100000</span>) <span style="color: #008800; font-weight: bold;">Then</span> N <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">1</span>
  <span style="color: #008800; font-weight: bold;">Set</span> DT <span style="color: #333333;">=</span> ThisWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet3"</span>).Range(<span style="background-color: #fff0f0;">"A1:L"</span> <span style="color: #333333;">&amp;</span> N)
  DT.Select
  Selection.Copy

  ActiveWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet6"</span>).Select
  lMaxRows <span style="color: #333333;">=</span> Cells(Rows.Count, <span style="background-color: #fff0f0;">"A"</span>).End(xlUp).Row
  ThisWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet6"</span>).Range(<span style="background-color: #fff0f0;">"A"</span> <span style="color: #333333;">&amp;</span> lMaxRows <span style="color: #333333;">+</span> <span style="color: #0000dd; font-weight: bold;">2</span>).Select
  Selection.PasteSpecial Paste:<span style="color: #333333;">=</span>xlPasteValues


ActiveWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet4"</span>).Select
  
  N <span style="color: #333333;">=</span> ThisWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet4"</span>).Cells(<span style="color: #0000dd; font-weight: bold;">1</span>, <span style="color: #0000dd; font-weight: bold;">1</span>).End(xlDown).Row
  <span style="color: #008800; font-weight: bold;">If</span> (N <span style="color: #333333;">&gt;</span> <span style="color: #0000dd; font-weight: bold;">100000</span>) <span style="color: #008800; font-weight: bold;">Then</span> N <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">1</span>
  <span style="color: #008800; font-weight: bold;">Set</span> DT <span style="color: #333333;">=</span> ThisWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet4"</span>).Range(<span style="background-color: #fff0f0;">"A1:M"</span> <span style="color: #333333;">&amp;</span> N)
  DT.Select
  Selection.Copy

  ActiveWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet6"</span>).Select
  lMaxRows <span style="color: #333333;">=</span> Cells(Rows.Count, <span style="background-color: #fff0f0;">"A"</span>).End(xlUp).Row
  ThisWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet6"</span>).Range(<span style="background-color: #fff0f0;">"A"</span> <span style="color: #333333;">&amp;</span> lMaxRows <span style="color: #333333;">+</span> <span style="color: #0000dd; font-weight: bold;">2</span>).Select
  Selection.PasteSpecial Paste:<span style="color: #333333;">=</span>xlPasteValues


ActiveWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet5"</span>).Select
  
  N <span style="color: #333333;">=</span> ThisWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet5"</span>).Cells(<span style="color: #0000dd; font-weight: bold;">1</span>, <span style="color: #0000dd; font-weight: bold;">1</span>).End(xlDown).Row
  <span style="color: #008800; font-weight: bold;">If</span> (N <span style="color: #333333;">&gt;</span> <span style="color: #0000dd; font-weight: bold;">100000</span>) <span style="color: #008800; font-weight: bold;">Then</span> N <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">1</span>
  <span style="color: #008800; font-weight: bold;">Set</span> DT <span style="color: #333333;">=</span> ThisWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet5"</span>).Range(<span style="background-color: #fff0f0;">"A1:E"</span> <span style="color: #333333;">&amp;</span> N)
  DT.Select
  Selection.Copy

  ActiveWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet6"</span>).Select
  lMaxRows <span style="color: #333333;">=</span> Cells(Rows.Count, <span style="background-color: #fff0f0;">"A"</span>).End(xlUp).Row
  ThisWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet6"</span>).Range(<span style="background-color: #fff0f0;">"A"</span> <span style="color: #333333;">&amp;</span> lMaxRows <span style="color: #333333;">+</span> <span style="color: #0000dd; font-weight: bold;">2</span>).Select
  Selection.PasteSpecial Paste:<span style="color: #333333;">=</span>xlPasteValues


ActiveWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet1"</span>).Select

  
  N <span style="color: #333333;">=</span> ThisWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet1"</span>).Cells(<span style="color: #0000dd; font-weight: bold;">1</span>, <span style="color: #0000dd; font-weight: bold;">8</span>).End(xlDown).Row
  <span style="color: #008800; font-weight: bold;">If</span> (N <span style="color: #333333;">&gt;</span> <span style="color: #0000dd; font-weight: bold;">4</span>) <span style="color: #008800; font-weight: bold;">Then</span> N <span style="color: #333333;">=</span> N <span style="color: #333333;">-</span> <span style="color: #0000dd; font-weight: bold;">2</span>
  <span style="color: #008800; font-weight: bold;">Set</span> DT <span style="color: #333333;">=</span> ThisWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet1"</span>).Range(<span style="background-color: #fff0f0;">"A"</span> <span style="color: #333333;">&amp;</span> N <span style="color: #333333;">&amp;</span> <span style="background-color: #fff0f0;">":H"</span> <span style="color: #333333;">&amp;</span> N <span style="color: #333333;">+</span> <span style="color: #0000dd; font-weight: bold;">1</span>)
  DT.Select
  Selection.Copy

  ActiveWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet6"</span>).Select
  lMaxRows <span style="color: #333333;">=</span> Cells(Rows.Count, <span style="background-color: #fff0f0;">"A"</span>).End(xlUp).Row
  ThisWorkbook.Sheets(<span style="background-color: #fff0f0;">"Sheet6"</span>).Range(<span style="background-color: #fff0f0;">"A"</span> <span style="color: #333333;">&amp;</span> lMaxRows <span style="color: #333333;">+</span> <span style="color: #0000dd; font-weight: bold;">2</span>).Select
  Selection.PasteSpecial Paste:<span style="color: #333333;">=</span>xlPasteValues


<span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Sub</span>

<span style="color: #008800; font-weight: bold;">Public</span> <span style="color: #008800; font-weight: bold;">Function</span> <span style="color: #0066bb; font-weight: bold;">Nz</span>(<span style="color: #008800; font-weight: bold;">ByVal</span> Value, <span style="color: #008800; font-weight: bold;">Optional</span> <span style="color: #008800; font-weight: bold;">ByVal</span> ValueIfNull <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">""</span>)

    Nz <span style="color: #333333;">=</span> IIf(IsNull(Value), ValueIfNull, Value)

<span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Function</span>
<span style="color: #008800; font-weight: bold;">Function</span> <span style="color: #0066bb; font-weight: bold;">fncqbDate</span>(myDate <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">Date</span>) <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>

myDate <span style="color: #333333;">=</span> Nz(myDate, Now)
fncqbDate <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"{d '"</span> <span style="color: #333333;">&amp;</span> Year(myDate) <span style="color: #333333;">&amp;</span> <span style="background-color: #fff0f0;">"-"</span> <span style="color: #333333;">&amp;</span> Right(<span style="background-color: #fff0f0;">"00"</span> <span style="color: #333333;">&amp;</span> Month(myDate), <span style="color: #0000dd; font-weight: bold;">2</span>) <span style="color: #333333;">&amp;</span> <span style="background-color: #fff0f0;">"-"</span> <span style="color: #333333;">&amp;</span> Right(<span style="background-color: #fff0f0;">"00"</span> <span style="color: #333333;">&amp;</span> Day(myDate), <span style="color: #0000dd; font-weight: bold;">2</span>) <span style="color: #333333;">&amp;</span> <span style="background-color: #fff0f0;">"'}"</span>

<span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Function</span>
</pre>
</div>
<p>&nbsp;</p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] How to Auto Add relationship Between two tables in QlikSense Desktop using QODBC]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2984]]></link>
<guid isPermaLink="false"><![CDATA[1c67df9e0a5cfefa030b853983324004]]></guid>
<pubDate><![CDATA[Tue, 26 Dec 2017 10:19:06 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[How to Auto-Add a relationship between two tables in QlikSense Desktop using QODBC
Problem Description:
How to Auto-Add a relationship Between two tables in QlikSense Desktop using QODBC?
Solution:
Please create a new application in QlikSense Desktop ...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">How to Auto-Add a relationship between two tables in QlikSense Desktop using QODBC</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>How to Auto-Add a relationship Between two tables in QlikSense Desktop using QODBC?</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>Please create a new application in QlikSense Desktop &amp; connect to QuickBooks Data through QODBC. Please refer to&nbsp;<a href="https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2983" target="_blank">How to use QlikSense Desktop with QODBC</a> for connection details.</p>
<p>I am assuming that you have referred to the above link &amp; connected to QuickBooks from QlikSense Desktop using QODBC.</p>
<p>The connection was made with QuickBooks through "QuickBooks Data" DSN &amp; you can see the list of tables and windows list of tables available.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step7.png" alt="" /></p>
<p>Select the table you want to add to the QlikSense Desktop &amp; click the "Add data" button. In this example, I am selecting the Customer &amp; Invoice table.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step8.png" alt="" /></p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step9.png" alt="" /></p>
<p>Adding data is in progress.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step10.png" alt="" /></p>
<p>The Customer &amp; Invoice table data is added to the QlikSense Desktop.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step11.png" alt="" /></p>
<p>Please click the Relationship icon to associate table data according to the recommendation.</p>
<p>&nbsp;</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step12.png" alt="" /></p>
<p>The relationship is automatically added between the Customer &amp; Invoice tables.</p>
<p>&nbsp;</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step13.png" alt="" /></p>
<p>Please click on the join icon to see the relationship details.</p>
<p>&nbsp;</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step14.png" alt="" /></p>
<p>You can see that the Customer table's "ListID" is related to the Invoice table's "CustomerRefListID" field.</p>
<p>&nbsp;</p>
<p>Please click the "Load data" button on the QlikSense Desktop.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step18.png" alt="" /></p>
<p>Loading data is in progress.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step19.png" alt="" /></p>
<p>The data is loaded successfully. Click on the "Edit the sheet" button to add data to the sheet.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step20.png" alt="" /></p>
<p>The empty sheet is open in the QlikSense Desktop. Click on the "Fields" icon to add table fields to the sheet.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step21.png" alt="" /></p>
<p>In this example, I have added the Customer table's Phone, Email field &amp; Invoice table's CustomerRefFullName, RefNumber, and SubTotal field in the sheet. Please click on the "Done" button to finish editing the sheet.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step22.png" alt="" /></p>
<p>QlikSense Desktop displays data in the sheet.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step23.png" alt="" /></p>
<p>Now, you can perform any operation on table data using QlikSense Desktop.</p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] How to use QlikSense Desktop with QODBC]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2983]]></link>
<guid isPermaLink="false"><![CDATA[b1b0432ceafb0ce714426e9114852ac7]]></guid>
<pubDate><![CDATA[Tue, 26 Dec 2017 09:56:22 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[How to use QlikSense Desktop with QODBC
To use QlikSense Desktop with QODBC, please follow the steps below.
Open QlikSense Desktop &amp; click on the "CREATE A NEW APP" button.

Enter the app name and click the "Create" button.

A New application in...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">How to use QlikSense Desktop with QODBC</span></h2>
<p>To use QlikSense Desktop with QODBC, please follow the steps below.</p>
<p>Open QlikSense Desktop &amp; click on the "CREATE A NEW APP" button.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step1.png" alt="" /></p>
<p>Enter the app name and click the "Create" button.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step2.png" alt="" /></p>
<p>A New application in QlikSense Desktop was created successfully. Click "Open app" for the opening application.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step3.png" alt="" /></p>
<p>The application has two options: "Add Data" &amp; "Data Load Editor." In this example, I am using the "Add Data" option. Click the "Add Data" button to update QuickBooks Data to QlikSense Desktop.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step4.png" alt="" /></p>
<p>QlikSense Desktop will show a list of the data sources. Please select the "ODBC" data source.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step5.png" alt="" /></p>
<p>In the Create new connection (ODBC) window, select "System DSN" &amp; enable the "32-bit" option, select DSN &amp; click on the "Create" button. You can change DSN as per your configuration. I am connecting to the default DSN, "QuickBooks Data," in this example.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step6.png" alt="" /></p>
<p>The connection was made with QuickBooks through QuickBooks Data DSN &amp; you can see the list of tables and the list of tables available.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step7.png" alt="" /></p>
<p>Select the table you want to add to the QlikSense Desktop &amp; click the "Add data" button. In this example, I am selecting the Customer table.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step15.png" alt="" /></p>
<p>Adding data is in progress.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step10.png" alt="" /></p>
<p>The customer table data is added to the QlikSense Desktop. Now, you can perform any operation on table data using QlikSense Desktop.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step16.png" alt="" /></p>
<p>You can view table data by double-clicking the "Customer" table icon.</p>
<p>&nbsp;</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step17.png" alt="" /></p>
<p>Please click the "Load data" button on the QlikSense Desktop.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step24.png" alt="" /></p>
<p>Loading data is in progress.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step25.png" alt="" /></p>
<p>The data is loaded successfully. Click on the "Edit the sheet" button to add data to the sheet.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step26.png" alt="" /></p>
<p>The empty sheet is open in the QlikSense Desktop. Click on the "Fields" icon to add table fields to the sheet.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step21.png" alt="" /></p>
<p>In this example, I have added the Customer table's FullName, CompanyName, TermsRefFullName, Phone, and Email fields on the sheet. Please click on the "Done" button to finish editing the sheet.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step27.png" alt="" /></p>
<p>QlikSense Desktop displays data on the sheet.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/QlikSense/step28.png" alt="" /></p>
<p>Now, you can perform any operation on table data using QlikSense Desktop.</p>
<p>Also, Refer:</p>
<p><a href="https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2984" target="_blank">How to Auto Add relationship Between two tables in QlikSense Desktop using QODBC</a></p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Using Optimizer Off for selected tables in MS-Access linked table with QRemote]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2977]]></link>
<guid isPermaLink="false"><![CDATA[2bd2e3373dce441c6c3bfadd1daa953e]]></guid>
<pubDate><![CDATA[Mon, 04 Dec 2017 07:16:45 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[Using Optimizer Off for selected tables in an MS-Access linked table with QRemote 
Problem Description:
I am using QODBC to access QuickBooks Data. I have linked all QuickBooks tables using QRemote DSN.
I want to use the Customer table to be Optimizer ...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">Using Optimizer Off for selected tables in an MS-Access linked table with QRemote </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>I am using QODBC to access QuickBooks Data. I have linked all QuickBooks tables using QRemote DSN.</p>
<p>I want to use the Customer table to be Optimizer OFF and the rest of the tables with Optimizer ON.</p>
<p>How can I achieve this?</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>It would be best if you had the Customer table with Optimizer OFF and the rest of the tables to be Optimizer ON. It would be best if you used a separate DSN with Optimizer Off for the Customer table.</p>
<p>You need to create a new QODBC DSN through Configure QODBC Data Source.</p>
<p>You can open Configure QODBC Data Source from Start &gt;&gt; All Programs &gt;&gt; QODBC Driver for use with QuickBooks &gt;&gt; Configure QODBC Data Source.</p>
<p align="center"><img src="https://support.flexquarters.com/esupport/newimages/MSAOPTOFF/step1.png" alt="" /></p>
<p>Click on the "System DSN" tab to create a DSN that both Windows applications and services can call. Click on the "Add" button to create a new DSN.</p>
<p align="center"><img src="https://support.flexquarters.com/esupport/newimages/MSAOPTOFF/step2.png" alt="" /></p>
<p>Select the "QODBC Driver for QuickBooks" option and click on the "Finish" button.</p>
<p align="center"><img src="https://support.flexquarters.com/esupport/newimages/MSAOPTOFF/step3.png" alt="" /></p>
<p>Name your new DSN as "QuickBooks Data-OPT-OFF."</p>
<p align="center"><img src="https://support.flexquarters.com/esupport/newimages/MSAOPTOFF/step4.png" alt="" /></p>
<p>Switch to the "Optimizer" tab/window and uncheck the "Use Optimizer" option, &amp; Click "Apply" followed by "OK" to save the DSN configuration.</p>
<p align="center"><img src="https://support.flexquarters.com/esupport/newimages/MSAOPTOFF/step5.png" alt="" /></p>
<p>New DSN created. Close the ODBC Manager by clicking "OK."</p>
<p align="center"><img src="https://support.flexquarters.com/esupport/newimages/MSAOPTOFF/step6.png" alt="" /></p>
<p>After this, you need to create a new QRemote DSN through Configure QODBC Data Source 64-bit.</p>
<p>You can open Configure QODBC Data Source from Start &gt;&gt; All Programs &gt;&gt; QODBC Driver for use with QuickBooks &gt;&gt; Configure QODBC Data Source 64-bit.</p>
<p><strong>Note:</strong> If you are using a 32-bit application &amp; using QRemote, then you need to open Configure QODBC Data Source from Start &gt;&gt; All Programs &gt;&gt; QODBC Driver for use with QuickBooks &gt;&gt; Configure QODBC Data Source &amp; create a new QRemote DSN from 32-bit ODBC Manager.</p>
<p align="center"><img src="https://support.flexquarters.com/esupport/newimages/QRemoteSQLServer64Bit/image008.png" alt="" /></p>
<p>Click on the "System DSN" tab to create a DSN that both Windows applications and services can call. Click on the "Add" button to create a new DSN.</p>
<p align="center"><img src="https://support.flexquarters.com/esupport/newimages/MSAOPTOFF/step13.png" alt="" /></p>
<p>Select the "QRemote for QuickBooks" option and click on the "Finish" button.</p>
<p align="center"><img src="https://support.flexquarters.com/esupport/newimages/MSAOPTOFF/step14.png" alt="" /></p>
<p>Name your new DSN as "QRemote-OPT-OFF."</p>
<p align="center"><img src="https://support.flexquarters.com/esupport/newimages/MSAOPTOFF/step15.png" alt="" /></p>
<p><span style="font-size: 10.0pt; font-family: 'Verdana','sans-serif'; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; mso-bidi-font-weight: bold;">&middot;</span><span style="font-size: 10.0pt; font-family: 'Verdana','sans-serif'; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span class="GramE"><span style="font-size: 10.0pt; font-family: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: minor-fareast; mso-bidi-font-weight: bold;">Server:</span></span><span style="font-size: 10.0pt; font-family: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: minor-fareast; mso-bidi-font-weight: bold;"> IP Address displayed on QRemote Server</span><span style="font-family: 'Verdana','sans-serif'; mso-bidi-font-weight: bold;">&nbsp;</span></p>
<p><span style="font-size: 10.0pt; font-family: 'Verdana','sans-serif'; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; mso-bidi-font-weight: bold;">&middot;</span><span style="font-size: 10.0pt; font-family: 'Verdana','sans-serif'; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span class="GramE"><span style="font-size: 10.0pt; font-family: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: minor-fareast; mso-bidi-font-weight: bold;">Port:</span></span><span style="font-size: 10.0pt; font-family: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: minor-fareast; mso-bidi-font-weight: bold;"> Port displayed on QRemote Server</span><span style="font-family: 'Verdana','sans-serif'; mso-bidi-font-weight: bold;">&nbsp;</span></p>
<p><span style="font-size: 10.0pt; font-family: 'Verdana','sans-serif'; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; mso-bidi-font-weight: bold;">&middot;</span><span style="font-size: 10.0pt; font-family: 'Verdana','sans-serif'; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="font-size: 10.0pt; font-family: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: minor-fareast; mso-bidi-font-weight: bold;">Encryption <span class="GramE">Key/Password:&nbsp;</span></span><span style="font-size: 10.0pt; font-family: 'Verdana','sans-serif'; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;">(By Default, Encryption Key/Password is set to "QODBC#QRemote$1". In case you want to change your Encryption Key/Password, you can configure your encryption key on&nbsp;<span class="SpellE">QRemoteServer</span> and use the same on QRemote Client DSN)</span><span style="mso-bidi-font-weight: bold;">&nbsp;</span></p>
<p><span style="font-size: 10.0pt; font-family: 'Verdana','sans-serif'; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; mso-bidi-font-weight: bold;">&middot;</span><span style="font-size: 10.0pt; font-family: 'Verdana','sans-serif'; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="font-size: 10.0pt; font-family: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: minor-fareast; mso-bidi-font-weight: bold;">Encryption<span class="GramE">:&nbsp;</span></span><span style="font-size: 10.0pt; font-family: 'Verdana','sans-serif'; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;">(By Default, Encryption is set to Off. In case you want to use encrypted data transfer between QRemote client and <span class="SpellE">QRemoteServer</span>, you can configure encryption on&nbsp;<span class="SpellE">QRemoteServer</span> and use the same on QRemote Client DSN)</span><span style="mso-bidi-font-weight: bold;">&nbsp;</span></p>
<p><span style="font-size: 10.0pt; font-family: 'Verdana','sans-serif'; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; mso-bidi-font-weight: bold;">&middot;</span><span style="font-size: 10.0pt; font-family: 'Verdana','sans-serif'; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="font-size: 10.0pt; font-family: 'Verdana','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: minor-fareast; mso-bidi-font-weight: bold;">Remote <span class="GramE"><span class="grame">DSN:</span></span>&nbsp;select <strong>QuickBooks Data-OPT-OFF</strong> DSN from the list. <span class="GramE">(Make</span> sure QRemote Server is running)</span><span style="font-family: 'Verdana','sans-serif'; mso-bidi-font-weight: bold;">&nbsp;</span>&nbsp;</p>
<p>Click "OK" to save the DSN configuration.</p>
<p>Start QuickBooks login to the Company File as Admin. Start QuickBooks login to the Company File as Admin. New DSN created. Close the ODBC Manager by clicking "OK."</p>
<p align="center"><img src="https://support.flexquarters.com/esupport/newimages/MSAOPTOFF/step16.png" alt="" /></p>
<p>&nbsp;</p>
<p align="center"><img src="https://support.flexquarters.com/esupport/newimages/MSAOPTOFF/step7.png" alt="" /></p>
<p>Switch to your MS-Access application. Right-click on Linked tables and select "Linked Table Manager." I have linked all tables in the MS Access Database using the "QuickBooks Data" DSN with the Optimizer ON option.</p>
<p align="center"><img src="https://support.flexquarters.com/esupport/newimages/MSAOPTOFF/step8.png" alt="" /></p>
<p>From the list of tables, select the Customer table &amp; enable the "Always prompt for a new location" option, and click "OK."</p>
<p align="center"><img src="https://support.flexquarters.com/esupport/newimages/MSAOPTOFF/step17.png" alt="" /></p>
<p>From the DSN list, select the newly created DSN from "Machine Data Source." Instead of using "QuickBooks Data 64-bit QRemote", Select "QRemote-OPT-OFF."</p>
<p align="center"><img src="https://support.flexquarters.com/esupport/newimages/MSAOPTOFF/step18.png" alt="" /></p>
<p>The linked table has been refreshed.</p>
<p align="center"><img src="https://support.flexquarters.com/esupport/newimages/MSAOPTOFF/step11.png" alt="" /></p>
<p>Customer table DSN is changed to "QRemote-OPT-OFF" from "QuickBooks Data 64-bit QRemote". Close "Linked Table Manager" by clicking the "Close" button.</p>
<p align="center"><img src="https://support.flexquarters.com/esupport/newimages/MSAOPTOFF/step19.png" alt="" /></p>
<p>This way, MS Access will create a new Connection to QuickBooks Data-OPT-OFF (Optimizer Off - when accessing the Customer table). For the rest of the tables, MS Access will use QuickBooks Data (Optimizer On).</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - Where Item Serial Numbers or Lot Numbers are stored]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2976]]></link>
<guid isPermaLink="false"><![CDATA[a209ca7b50dcaab2db7c2d4d1223d4d5]]></guid>
<pubDate><![CDATA[Mon, 04 Dec 2017 07:14:32 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - Where Item Serial Numbers or Lot Numbers are stored
Problem Description:
I'm having trouble finding where an Item's serial numbers are stored in the QuickBooks database. I have gone through your table schema online here http://doc.qod...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - Where Item Serial Numbers or Lot Numbers are stored</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>I'm having trouble finding where an Item's serial numbers are stored in the QuickBooks database. I have gone through your table schema online here http://doc.qodbc.com/qodbc/usa/, but I cannot find where the serial numbers for a given inventory item are stored.</p>
<p>Can you please advise?</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>You can find SerialNumber or LotNumber from the Transaction module you have assigned.</p>
<p>For Example, if you have assigned a SerialNumber or LotNumber in the Invoice, then you need to refer to the InvoiceLine table.</p>
<p>Below is the list of table &amp; column which contains the serial number.</p>
<h4><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">SerialNumber Details:</span></span></h4>
<table style="width: 65%;">
<tbody>
<tr><th>Table Name</th><th>Column Name</th></tr>
<tr>
<td>BillItemLine</td>
<td>ItemLineSerialNumber</td>
</tr>
<tr>
<td>BuildAssembly</td>
<td>SerialNumber</td>
</tr>
<tr>
<td>BuildAssemblyComponentItemLine</td>
<td>SerialNumber</td>
</tr>
<tr>
<td>CheckItemLine</td>
<td>ItemLineSerialNumber</td>
</tr>
<tr>
<td>CreditMemoLine</td>
<td>CreditMemoLineSerialNumber</td>
</tr>
<tr>
<td>CreditCardChargeItemLine</td>
<td>ItemLineSerialNumber</td>
</tr>
<tr>
<td>CreditCardCreditItemLine</td>
<td>ItemLineSerialNumber</td>
</tr>
<tr>
<td>InventoryAdjustmentLine</td>
<td>InventoryAdjustmentLineQuantityAdjustmentSerialNumber</td>
</tr>
<tr>
<td>InventoryAdjustmentLine</td>
<td>InventoryAdjustmentLineSerialNumber</td>
</tr>
<tr>
<td>InvoiceLine</td>
<td>InvoiceLineSerialNumber</td>
</tr>
<tr>
<td>ItemFixedAsset</td>
<td>SerialNumber</td>
</tr>
<tr>
<td>ItemReceiptItemLine</td>
<td>ItemLineSerialNumber</td>
</tr>
<tr>
<td>SalesOrderLine</td>
<td>SalesOrderLineSerialNumber</td>
</tr>
<tr>
<td>SalesReceiptLine</td>
<td>SalesReceiptLineSerialNumber</td>
</tr>
<tr>
<td>TransferInventoryLine</td>
<td>TransferInventoryLineSerialNumber</td>
</tr>
</tbody>
</table>
<h4><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">LotNumber Details:</span></span></h4>
<table style="width: 65%;">
<tbody>
<tr><th>Table Name</th><th>Column Name</th></tr>
<tr>
<td>BillItemLine</td>
<td>ItemLineLotNumber</td>
</tr>
<tr>
<td>BuildAssembly</td>
<td>LotNumber</td>
</tr>
<tr>
<td>BuildAssemblyComponentItemLine</td>
<td>LotNumber</td>
</tr>
<tr>
<td>CheckItemLine</td>
<td>ItemLineLotNumber</td>
</tr>
<tr>
<td>CreditMemoLine</td>
<td>CreditMemoLineLotNumber</td>
</tr>
<tr>
<td>CreditCardChargeItemLine</td>
<td>ItemLineLotNumber</td>
</tr>
<tr>
<td>CreditCardCreditItemLine</td>
<td>ItemLineLotNumber</td>
</tr>
<tr>
<td>InventoryAdjustmentLine</td>
<td>InventoryAdjustmentLineQuantityAdjustmentLotNumber</td>
</tr>
<tr>
<td>InventoryAdjustmentLine</td>
<td>InventoryAdjustmentLineLotNumber</td>
</tr>
<tr>
<td>InvoiceLine</td>
<td>InvoiceLineLotNumber</td>
</tr>
<tr>
<td>ItemReceiptItemLine</td>
<td>ItemLineLotNumber</td>
</tr>
<tr>
<td>SalesOrderLine</td>
<td>SalesOrderLineLotNumber</td>
</tr>
<tr>
<td>SalesReceiptLine</td>
<td>SalesReceiptLineLotNumber</td>
</tr>
<tr>
<td>TransferInventoryLine</td>
<td>TransferInventoryLineLotNumber</td>
</tr>
</tbody>
</table>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - Error 3180 - There was an error when saving a data extension named &quot;&quot;.QuickBooks error message : Attribute with specified name alre...]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2975]]></link>
<guid isPermaLink="false"><![CDATA[2ef3e50fd7c1091dda165f25be7f64fd]]></guid>
<pubDate><![CDATA[Fri, 01 Dec 2017 08:57:04 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - Error 3180 - There was an error when saving a data extension named ". "QuickBooks error message: Attribute with the specified name already exists.
Problem Description:
I am using QODBC for creating Invoices in QuickBooks. I am using C...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - Error 3180 - There was an error when saving a data extension named ". "QuickBooks error message: Attribute with the specified name already exists.</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>I am using QODBC for creating Invoices in QuickBooks. I am using CustomField in QuickBooks.</p>
<p>It works fine if I insert null strings into the two custom fields like this.</p>
<p>INSERT INTO InvoiceLine ( InvoiceLineItemRefListID, InvoiceLineDesc, InvoiceLineQuantity, InvoiceLineRate, InvoiceLineSalesTaxCodeRefListID, FQSaveToCache ) VALUES ( '8000001B-1436399889', 'TW Markup,' 15, 0.26, '20000-1051544872', 1 )</p>
<p>INSERT INTO Invoice ( CustomerRefListID, ARAccountRefListID, RefNumber, CustomFieldDBInvoice, CustomFieldFinalBuyer, Memo, TemplateRefListID ) VALUES ( '80000CFB-1334284223', '3A0000-1121110183', '22111', '', '', 'Import Date: 11/23/2017', '80000021-1483576709' )</p>
<p>But if I include any characters in the text string for either custom field, like this, I get the attached error.</p>
<p>INSERT INTO InvoiceLine ( InvoiceLineItemRefListID, InvoiceLineDesc, InvoiceLineQuantity, InvoiceLineRate, InvoiceLineSalesTaxCodeRefListID, FQSaveToCache ) VALUES ( '8000001B-1436399889', 'TW Markup,' 15, 0.26, '20000-1051544872', 1 )</p>
<p>INSERT INTO Invoice ( CustomerRefListID, ARAccountRefListID, RefNumber, CustomFieldDBInvoice, CustomFieldFinalBuyer, Memo, TemplateRefListID ) VALUES ( '80000CFB-1334284223', '3A0000-1121110183', '22111', 'x,' 'x,' 'Import Date: 11/23/2017', '80000021-1483576709' )</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/3180/step1.png" alt="" /></p>
<p>Below is the error in the QODBC &amp; QuickBooks SDK logs.</p>
<p>Error: 3180 - There was an error when saving a data extension named "Final Buyer."QuickBooks error message: Attribute with the specified name already exists.</p>
<p>20171123.123634 E 11176 DataExtStorage::DoAdd Error saving: data extension named "Final Buyer."QuickBooks error message: Attribute with the specified name already exists.</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>You will face this issue when you set the default value in the Custom Fields.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/3180/step2.png" alt="" /></p>
<p>The default strings take precedence over the new values set in the insert statement, &amp; issue happens.</p>
<p>If you edit the custom fields in the Invoice from the QuickBooks Application, it will ask to confirm the edit.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/3180/step3.png" alt="" /></p>
<p>You must answer 'No' to the next question about having this "new information appear next time."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/3180/step4.png" alt="" /></p>
<p>If you answer 'Yes,' it will set the defaults in the customer record and prevent text strings from being written to those fields in the Invoice.</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] QuickBooks Specifications for Maximum number of records or transactions]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2970]]></link>
<guid isPermaLink="false"><![CDATA[6db291ac9963003618ca6aa15063c4d6]]></guid>
<pubDate><![CDATA[Fri, 03 Nov 2017 07:05:48 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ QuickBooks Specifications for the maximum number of records or transactions
As of Date: 2007-07-25
QuickBooks can handle a maximum of 2 billion transactions. The maximum number of transactions is limited more by your computer's disk space and memory th...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> QuickBooks Specifications for the maximum number of records or transactions</span></h2>
<p><strong>As of Date: 2007-07-25</strong></p>
<p>QuickBooks can handle a maximum of 2 billion transactions. The maximum number of transactions is limited more by your computer's disk space and memory than by QuickBooks.</p>
<p>Each list in QuickBooks has a maximum number of items it can contain, as shown in the following table:</p>
<p>&nbsp;</p>
<table border="1" width="100%" cellspacing="0" cellpadding="2">
<tbody>
<tr>
<td align="center" valign="top" bgcolor="#c0c0c0" width="57%" height="22"><strong>List</strong></td>
<td align="center" valign="top" bgcolor="#c0c0c0" width="43%" height="22"><strong>Maximum number of items</strong></td>
</tr>
<tr>
<td valign="top" width="57%" height="22">Chart of accounts</td>
<td valign="top" width="43%" height="22">
<p align="center">10,000</p>
</td>
</tr>
<tr>
<td valign="top" width="57%">Items, including inventory items<br />(Group items can have only 20 individual items.)</td>
<td valign="top" width="43%">
<p align="center">14,500</p>
</td>
</tr>
<tr>
<td valign="top" width="57%" height="22">Job types</td>
<td valign="top" width="43%" height="22">
<p align="center">10,000</p>
</td>
</tr>
<tr>
<td valign="top" width="57%" height="22">Vendor types</td>
<td valign="top" width="43%" height="22">
<p align="center">10,000</p>
</td>
</tr>
<tr>
<td valign="top" width="57%" height="22">Customer types</td>
<td valign="top" width="43%" height="22">
<p align="center">10,000</p>
</td>
</tr>
<tr>
<td valign="top" width="57%" height="22">Payroll items</td>
<td valign="top" width="43%" height="22">
<p align="center">10,000</p>
</td>
</tr>
<tr>
<td valign="top" width="57%" height="22">Price Levels</td>
<td valign="top" width="43%" height="22">
<p align="center">100</p>
</td>
</tr>
<tr>
<td valign="top" width="57%" height="22">Classes</td>
<td valign="top" width="43%" height="22">
<p align="center">10,000</p>
</td>
</tr>
<tr>
<td valign="top" width="57%" height="22">A/R terms and A/P terms total</td>
<td valign="top" width="43%" height="22">
<p align="center">10,000</p>
</td>
</tr>
<tr>
<td valign="top" width="57%" height="22">Payment methods</td>
<td valign="top" width="43%" height="22">
<p align="center">10,000</p>
</td>
</tr>
<tr>
<td valign="top" width="57%" height="22">Shipping methods</td>
<td valign="top" width="43%" height="22">
<p align="center">10,000</p>
</td>
</tr>
<tr>
<td valign="top" width="57%" height="22">Customer messages</td>
<td valign="top" width="43%" height="22">
<p align="center">10,000</p>
</td>
</tr>
<tr>
<td valign="top" width="57%" height="22">Memorized reports</td>
<td valign="top" width="43%" height="22">
<p align="center">14,500</p>
</td>
</tr>
<tr>
<td valign="top" width="57%" height="22">Memorized transactions</td>
<td valign="top" width="43%" height="22">
<p align="center">14,500</p>
</td>
</tr>
<tr>
<td valign="top" width="57%" height="22">To-Do notes</td>
<td valign="top" width="43%" height="22">
<p align="center">10,000</p>
</td>
</tr>
<tr>
<td valign="top" width="57%">Total names: employees, customers, vendors, and other words combined<br /><br /></td>
<td valign="top" width="43%">
<p align="center">14,500</p>
</td>
</tr>
</tbody>
</table>
<p><br /><br /><strong>Note:</strong> Some of the items mentioned in the chart above are not available in earlier versions of QuickBooks.</p>
<p>&nbsp;</p>
<p>You can see the total number of customers, items, and names in your company data file by pressing <strong>Ctrl+1</strong> in QuickBooks to open the <strong>Product Information</strong> screen.</p>
<p><strong>Practical limitations</strong></p>
<p>&nbsp;</p>
<p>QuickBooks is typically designed for small businesses with 20 or fewer employees and an annual revenue of fewer than two million dollars. The ideal use of QuickBooks is to keep at least two years of complex transactions in a company data file so that you can run comparative reports and have prior-year project information.</p>
<p>The rate of growth of QuickBooks company data files varies significantly from company to company. How quickly a file grows depends on the number of transactions, the amount of information entered per transaction, and the number of "links" per transaction. Since businesses track different information, there is no "average" or "typical" data file size.</p>
<p>For example, someone who enters 500 1-line invoices per month might find their data file smaller than another person who enters 100 5-line invoices per month. In comparison, someone who usually receives five separate payments per invoice would have a larger file than someone who receives only one payment per invoice.</p>
<p>To estimate if QuickBooks is right for your small business, take the average number of monthly transactions (remember, an invoice, payment, and deposit would be three separate transactions, and a bill and bill payment would count as two) and multiply by 2 KB to determine how much the data file will grow each month.</p>
<p>For example, if your company enters an average of 300 transactions per month, the data file would grow approximately 600 KB per month (300 x 2 KB = 600 KB) or 7200 KB per year (600 KB x 12 = 7200 KB). If the annual data file size is less than 15,000 KB, then QuickBooks should be more than sufficient for the company. (Present QuickBooks users can check the size of their QuickBooks file by pressing <strong>Command+1</strong> on the keyboard.)</p>
<p><strong>Note:</strong> The 2 KB multiplier does not include list information (which will grow as new names are added to the file) and is only an approximation that may not be a suitable estimate for all QuickBooks company data files.</p>
<p>If the performance of QuickBooks slows down, or you decide that you do not want to keep detailed transactions for prior years, you can condense a QuickBooks company data file. For QuickBooks 2007 - 2006 users, condensing the company data files is known as "Cleaning up data." For more information on cleaning up the company data file, refer to the article <a href="https://community.intuit.com/articles/1586302-use-the-clean-up-company-data-utility" target="_blank">Cleaning up data</a>. For QuickBooks 2005 users, condensing the company file is known as "archiving and condensing data." For more information on archiving and condensing the company file, refer to the article <a href="https://community.intuit.com/articles/1502371-the-condense-data-utility" target="_blank">Archiving and condensing data</a>.</p>
<p><br />QuickBooks Enterprise Solutions can handle a maximum of 2 billion transactions. The maximum number of transactions is limited more by your computer's disk space and memory than by QuickBooks.</p>
<p>&nbsp;</p>
<p>Each list in QuickBooks Enterprise Solutions has a maximum number of items it can contain, as shown in the following table:</p>
<p>&nbsp;</p>
<table border="1" width="100%" cellspacing="0" cellpadding="2">
<tbody>
<tr>
<td align="center" valign="top" bgcolor="#c0c0c0" width="47%" height="22"><strong>List</strong></td>
<td align="center" valign="top" bgcolor="#c0c0c0" width="53%" height="22"><strong>Maximum number of items</strong></td>
</tr>
<tr>
<td valign="top" width="47%" height="22">Chart of accounts</td>
<td valign="top" width="53%" height="22">
<div align="center">10,000</div>
</td>
</tr>
<tr>
<td valign="top" width="47%">Items, including inventory items<br />(Group items can contain only 20 individual items.)</td>
<td valign="top" width="53%">
<div align="center">&gt;100,000</div>
</td>
</tr>
<tr>
<td valign="top" width="47%" height="22">Price levels</td>
<td valign="top" width="53%" height="22">
<div align="center">100</div>
</td>
</tr>
<tr>
<td valign="top" width="47%" height="22">Job types</td>
<td valign="top" width="53%" height="22">
<div align="center">10,000</div>
</td>
</tr>
<tr>
<td valign="top" width="47%" height="22">Vendor types</td>
<td valign="top" width="53%" height="22">
<div align="center">10,000</div>
</td>
</tr>
<tr>
<td valign="top" width="47%" height="22">Customer types</td>
<td valign="top" width="53%" height="22">
<div align="center">10,000</div>
</td>
</tr>
<tr>
<td valign="top" width="47%" height="22">Payroll items</td>
<td valign="top" width="53%" height="22">
<div align="center">10,000</div>
</td>
</tr>
<tr>
<td valign="top" width="47%" height="22">Classes</td>
<td valign="top" width="53%" height="22">
<div align="center">10,000</div>
</td>
</tr>
<tr>
<td valign="top" width="47%" height="22">A/R terms and A/P terms total</td>
<td valign="top" width="53%" height="22">
<div align="center">
<div align="center">29,000</div>
</div>
</td>
</tr>
<tr>
<td valign="top" width="47%" height="22">Sales reps</td>
<td valign="top" width="53%" height="22">
<div align="center">10,000</div>
</td>
</tr>
<tr>
<td valign="top" width="47%" height="22">Sales tax codes</td>
<td valign="top" width="53%" height="22">
<div align="center">10,000</div>
</td>
</tr>
<tr>
<td valign="top" width="47%" height="22">States</td>
<td valign="top" width="53%" height="22">
<div align="center">10,000</div>
</td>
</tr>
<tr>
<td valign="top" width="47%" height="22">Payment methods</td>
<td valign="top" width="53%" height="22">
<div align="center">10,000</div>
</td>
</tr>
<tr>
<td valign="top" width="47%" height="22">Shipping methods</td>
<td valign="top" width="53%" height="22">
<div align="center">10,000</div>
</td>
</tr>
<tr>
<td valign="top" width="47%" height="22">Customer messages</td>
<td valign="top" width="53%" height="22">
<div align="center">10,000</div>
</td>
</tr>
<tr>
<td valign="top" width="47%" height="22">Memorized reports</td>
<td valign="top" width="53%" height="22">
<div align="center">29.000</div>
</td>
</tr>
<tr>
<td valign="top" width="47%" height="22">Memorized transactions</td>
<td valign="top" width="53%" height="22">
<div align="center">29,000</div>
</td>
</tr>
<tr>
<td valign="top" width="47%" height="22">To-Do notes</td>
<td valign="top" width="53%" height="22">
<div align="center">10,000</div>
</td>
</tr>
<tr>
<td valign="top" width="47%">Total names: employees, customers, vendors, and other words combined</td>
<td valign="top" width="53%">
<p align="center">&gt;100,000</p>
</td>
</tr>
</tbody>
</table>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - How can I add line to an existing Check]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2963]]></link>
<guid isPermaLink="false"><![CDATA[b887d8d5e65ac4dec3934028fe23ad72]]></guid>
<pubDate><![CDATA[Thu, 02 Nov 2017 13:17:00 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - How can I add a line to an existing Check
Problem Description:
Is it possible to add a line to a check that already exists?
Here is an example from the QuickBooks Sample file. Below is a check for $500.00

Now I want to add additio...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - How can I add a line to an existing Check</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>Is it possible to add a line to a check that already exists?</p>
<p>Here is an example from the QuickBooks Sample file. Below is a check for $500.00</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/2963/step1.png" alt="" /></p>
<p>Now I want to add additional items to the check, so the check now looks like this:</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/2963/step2.png" alt="" /></p>
<p>I said $200.00, and now the total is $700.00.</p>
<p>How do I do this in QODBC?</p>
<p>I know how to make a check with multiple lines using FQSaveToCache, but here I want to add a line to a statement that already exists.</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>You need to add the field TxnID to the insert query. The field "TxnID" is available in the insert query only when the TxnID value points to an existing entity in QuickBooks.</p>
<p>The transaction was found by executing the following query:-</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/2963/step3.png" alt="" /></p>
<p>Here is an example of adding one line item to an existing Check, "2432F-1639575481," in our test company file.</p>
<p>For Adding Expense Line in existing check:</p>
<p>INSERT INTO CheckExpenseLine (TxnID, ExpenseLineAccountRefListID, ExpenseLineAmount, ExpenseLineMemo, ExpenseLineCustomerRefListID, ExpenseLineBillableStatus) VALUES ('2432F-1639575481', '3C0000-933270542', 200.00, 'Add 2nd line to check using QODBC', '800000B0-1197755238', 'Billable')</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/2963/step4.png" alt="" /></p>
<p>For adding an item line to an existing check:</p>
<p>INSERT INTO CheckItemLine (TxnID, AccountRefListID, PayeeEntityRefListID, ItemLineItemRefListID, ItemLineDesc, ItemLineCost, ItemLineAmount, ItemLineCustomerRefListID, ItemLineBillableStatus) VALUES ('2432F-1639575481', '20000-933270541', '630000-1071521572', '3C0000-1071513137', 'Building permit,' 100.00, 100.00, '250000-933272658', 'Billable')</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/2963/step5.png" alt="" /></p>
<p>Please notice that all values in the query come from our test company file. Please replace them using your value when running it on your end. You can add other line item columns to this query according to your request.</p>
<p><strong>Note</strong>: The FQSaveToCache does support the existing Check query.</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - How can I access Online Banking Aliases using QODBC]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2961]]></link>
<guid isPermaLink="false"><![CDATA[3e60e09c222f206c725385f53d7e567c]]></guid>
<pubDate><![CDATA[Thu, 02 Nov 2017 11:46:40 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - How can I access Online Banking Aliases using QODBC
Problem Description:
Does anybody know which table the Online Banking Aliases data is stored in QuickBooks?
To see what I'm talking about, go to the "Additional Info" tab of the "Ed...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - How can I access Online Banking Aliases using QODBC</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>Does anybody know which table the Online Banking Aliases data is stored in QuickBooks?</p>
<p>To see what I'm talking about, go to the "Additional Info" tab of the "Edit Vendor" window and click on "Manage Aliases."</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>I am sorry to inform you that the Online Banking Aliases are currently not exposed in Intuit's QBXML SDK, so they can't be seen using QODBC. Online Banking is an add-on that requires exclusive access to the QuickBooks company file.</p>
<p>QODBC is an ODBC driver for QuickBooks. It uses the QuickBooks SDK to communicate with QuickBooks, which means if Intuit doesn't expose one feature to the application in the SDK, QODBC cannot do it either.</p>
<p>Please refer to&nbsp;<a href="http://support.flexquarters.com/esupport/index.php?/Default/Knowledgebase/Article/View/2717" target="_blank">How to export QuickBooks data not available in QODBC</a>.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - How to locate Employee Emergency Contact Information using QODBC]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2958]]></link>
<guid isPermaLink="false"><![CDATA[b91b1facf3b3a7890177f02ac188f14c]]></guid>
<pubDate><![CDATA[Wed, 04 Oct 2017 06:46:35 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - How to locate Employee Emergency Contact Information using QODBC
Problem Description:
Is it possible to retrieve an employee's emergency contact information? If so, from what table?
Solution:
Employee Emergency Contact Information i...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - How to locate Employee Emergency Contact Information using QODBC</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>Is it possible to retrieve an employee's emergency contact information? If so, from what table?</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>Employee Emergency Contact Information is added in QODBC V320. If you are using QODBC V319 or an earlier QODBC version, you need to download &amp; install the latest QODBC version to access Employee Emergency Contact Information.</p>
<p>You can download &amp; install QODBC's latest version by clicking <a href="http://www.qodbc.com/qodbcDownload.htm" target="_blank">here</a>.</p>
<p>It would be best if you referred to the fields Employee table for Emergency Contact information.</p>
<p>1. EmergencyContactsPrimaryContactName</p>
<p>2. EmergencyContactsPrimaryContactValue</p>
<p>3. EmergencyContactsPrimaryContactRelation</p>
<p>4. EmergencyContactsSecondaryContactName</p>
<p>5. EmergencyContactsSecondaryContactValue</p>
<p>6. EmergencyContactsSecondaryContactRelation</p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - How to Receive Inventory without Purchase Orders]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2956]]></link>
<guid isPermaLink="false"><![CDATA[db5cea26ca37aa09e5365f3e7f5dd9eb]]></guid>
<pubDate><![CDATA[Wed, 27 Sep 2017 10:13:41 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - How to Receive Inventory without Purchase Orders
Problem Description:
Is it possible to register an item's arrival without the purchase order?
If yes, can I insert the rows in the "ItemReceiptItemLine" table using the reference to th...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - How to Receive Inventory without Purchase Orders</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>Is it possible to register an item's arrival without the purchase order?</p>
<p>If yes, can I insert the rows in the "ItemReceiptItemLine" table using the reference to the Bill?</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>Receiving Item does not require a Purchase Order. You can receive it directly using the BillItemLine &amp; ItemReceiptItemLine tables.</p>
<p>If you want to reference the Receive Item with Bill, you need to create a Bill using the BillItemLine table.</p>
<p>Please refer to&nbsp;<a href="https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/1626" target="_blank">How to create Bills using QODBC</a> for more details.</p>
<p>You can Receive Items without a purchase order by inserting records in the "ItemReceiptItemLine" table.</p>
<h4><span style="color: #3366ff;">Examples of Creating Item Receipts using QODBC</span></h4>
<p>First, please create a new MS Access database &amp; link the&nbsp;<strong>ItemReceiptItemLine</strong> table.</p>
<p>Please refer to&nbsp;<a href="https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2470" target="_blank">How to Use QODBC with MS Access 2016 / 365 / 2013 32-bit</a> for more details.</p>
<p>If you have 64-bit MS Office, please refer to&nbsp;<a href="https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2771" target="_blank">How to Use QODBC with MS Access 2016 / 365 / 2013 64-bit</a> for more details.</p>
<p>&nbsp;</p>
<p>After linking the table, we need to execute the query in the MS Access query editor:<br />MS Access &gt;&gt; <span id="22bd9f7c-350e-4064-9d1b-58e0c4aa9eaf" class="GINGER_SOFTWARE_mark">create</span> tab &gt;&gt; Query Design</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/RCVINVPO/step1.png" alt="" /></p>
<p>It should pop up&nbsp;for you to choose the<span id="396373f9-5c76-4d08-872c-53b47a354943" class="GINGER_SOFTWARE_mark"> table. Please</span>&nbsp;click the "close" button.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/RCVINVPO/step2.png" alt="" /></p>
<p>Now, please click on "SQL" from the left top corner below the File menu.</p>
<p>&nbsp;</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/RCVINVPO/step3.png" alt="" /></p>
<h5><span style="color: #0000ff;">Create an Item Receipt with 2 Lines</span></h5>
<p>&nbsp;&nbsp;&nbsp;&nbsp; Here we create an Item Receipt with two lines using 2 ItemReceiptItemLine INSERT commands (with the FQSaveToCache caching flag set true), which is automatically designed to pull in all cached ItemReceiptItemLine records and save immediately.</p>
<p><strong>First Line</strong></p>
<p>INSERT INTO ItemReceiptItemLine (VendorRefListID, RefNumber, Memo, ItemLineItemRefListID, ItemLineDesc, ItemLineQuantity, ItemLineCost, ItemLineAmount, ItemLineCustomerRefListID, ItemLineBillableStatus ,FQSaveToCache) values ('B0000-933272656', '1', 'Received items (bill to follow),' '110000-933272656', 'Cabinets: Cabinet Pulls,' 2,50,100,' 7D0000-1071526869', 'Billable,' 1)</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/RCVINVPO/step4.png" alt="" /></p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/RCVINVPO/step5.png" alt="" /></p>
<p><strong>Second Line</strong></p>
<p>INSERT INTO ItemReceiptItemLine (VendorRefListID, RefNumber, Memo, ItemLineItemRefListID, ItemLineDesc, ItemLineQuantity, ItemLineCost, ItemLineAmount, ItemLineCustomerRefListID, ItemLineBillableStatus,FQSaveToCache) values ('A60000-1197760912', '1', 'Received items (bill to follow),' '130000-933272656', 'Hardware: Doorknobs Std,' 3,60,180,' 940000-1071506775', 'Billable,' 0)</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/RCVINVPO/step7.png" alt="" /></p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/RCVINVPO/step5.png" alt="" /></p>
<p><strong>Result in QuickBooks</strong></p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/RCVINVPO/step6.png" alt="" /></p>
<p><span style="color: #990000;"><strong><span style="font-family: Arial, Helvetica, sans-serif;">Related Data Location Information </span></strong></span></p>
<p><span style="color: #0000ff; font-family: Arial, Helvetica, sans-serif;">VendorRefListID </span><span style="font-family: Arial, Helvetica, sans-serif;">Find ListID from Vendor Table</span></p>
<p><span style="color: #0000ff; font-family: Arial, Helvetica, sans-serif;">ItemLineItemRefListID </span><span style="font-family: Arial, Helvetica, sans-serif;">Find ListID from Item Table</span></p>
<p><span style="color: #0000ff; font-family: Arial, Helvetica, sans-serif;">ItemLineCustomerRefListID </span><span style="font-family: Arial, Helvetica, sans-serif;">Find ListID from Customer Table</span></p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-ALL] How to Auto Add relationship Between two tables in Crystal Report using QODBC]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2954]]></link>
<guid isPermaLink="false"><![CDATA[dc20d1211f3e7a99d775b26052e0163e]]></guid>
<pubDate><![CDATA[Thu, 21 Sep 2017 06:50:53 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[How to Auto-Add a relationship between two tables in Crystal Report using QODBC
Problem Description:
How to Auto-Add a relationship between two tables in Crystal Report using QODBC?
Solution:
A relationship can be extracted using the ODBC function "SQ...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">How to Auto-Add a relationship between two tables in Crystal Report using QODBC</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>How to Auto-Add a relationship between two tables in Crystal Report using QODBC?</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>A relationship can be extracted using the ODBC function "SQLForeignKeys" or "SP_FOREIGNKEYS."</p>
<p>Usage: SP_FOREIGNKEYS tablename tablename</p>
<p>Instruction: Returns a record set of the detailed relationship information of two tables.</p>
<p>Example: sp_foreignkeys Customer Invoice</p>
<p>Crystal Reports application automatically uses the relationship method and provides a user-friendly graphic interface to view the relationships between two or more tables.</p>
<p>To Auto Add a relationship between two tables in Crystal Report, please create a new report in Crystal Report &amp; connect to QuickBooks Data through QODBC. Please refer to&nbsp;<a href="https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/1565" target="_blank">How to use QODBC with Crystal Reports</a> for connection details.</p>
<p>I am assuming that you have referred to the above link &amp; connected to QuickBooks from Crystal Report using QODBC.</p>
<p>The connection was made with QuickBooks through "QuickBooks Data" DSN &amp; you can see the list of tables and windows list of tables available.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRAutoLink/step1.png" alt="" /></p>
<p>Select the table you want to add to the Crystal Report &amp; click the "&gt;" button. In this example, I am selecting the Customer &amp; Invoice table.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRAutoLink/step2.png" alt="" /></p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRAutoLink/step3.png" alt="" /></p>
<p>The Customer &amp; Invoice table data is added to the Crystal Report. Please click the "Next" button for link tables.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRAutoLink/step4.png" alt="" /></p>
<p>Please select the "By Key" option &amp; Crystal Report will automatically link tables according to the Primary Key &amp; Foreign Key relationship between the two tables of QODBC.</p>
<p>You can see that the Invoice table's "CustomerRefListID" is related to the Customer table's "listed" field.</p>
<p>&nbsp;</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRAutoLink/step5.png" alt="" /></p>
<p>Suppose you select the "By Name" option. In that case, Crystal Reports will not consider the Primary Key &amp; Foreign Key relationship between two tables of QODBC &amp; it will link according to a similar column name. <br />For example, Invoice table's ClassRefListID with the Customer table's "listed."</p>
<p>The table fields are now available for selection in your report. Now, you can perform any operation on table data using Crystal Reports.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRAutoLink/step6.png" alt="" /></p>
<p>In this example, I have added the Customer table's Phone, Email, and Balance fields &amp; Invoice table's CustomerRefFullName, RefNumber, and SubTotal fields in the report.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRAutoLink/step7.png" alt="" /></p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-ALL] QODBC Read-Only Table List]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2953]]></link>
<guid isPermaLink="false"><![CDATA[e2f9247929b404b2fe98ba6f32301e3b]]></guid>
<pubDate><![CDATA[Tue, 19 Sep 2017 09:42:28 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[QODBC Read-Only Table List
Problem Description:
I am using QODBC &amp; trying to modify data in QuickBooks. In a few tables, I can't insert/update records.
I am getting a "[QODBC] Not supported" error when inserting records.
Also, I have noticed "Erro...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">QODBC Read-Only Table List</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>I am using QODBC &amp; trying to modify data in QuickBooks. In a few tables, I can't insert/update records.</p>
<p>I am getting a "[QODBC] Not supported" error when inserting records.</p>
<p>Also, I have noticed "Error Modify not supported on this table" in QODBC Logs when trying to update records.</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>You may get a "[QODBC] Not supported" error if you try to insert the record in the Header/Master table directly without inserting the form in the Child/Detail table.</p>
<p>For Example, you may get a "[QODBC] Not supported" error if you try to insert a record directly into the Invoice/Bill/SalesOrder/PurchaseOrder, etc, table without inserting a document, the child table InvoiceLine/BillExpenseLine/BillItemLine/SalesOrderLine/PurchaseOrderLine.</p>
<p><strong>OR</strong></p>
<p>You may get the "[QODBC] Not supported" error or "Error Modify not supported on this table" in QODBC Logs if you are trying to insert/update the record in the Read-Only table.</p>
<p>Below is the list of Read-Only, which does not support insert/update operations.&nbsp;</p>
<table style="border-collapse: collapse; table-layout: fixed; width: 173pt;" border="0" cellspacing="0" cellpadding="0"><colgroup><col style="mso-width-source: userset; mso-width-alt: 8448; width: 194pt;" /> </colgroup>
<tbody align="center">
<tr style="height: 15.0pt;">
<td class="xl65" style="height: 15.0pt; width: 173pt;" width="235" height="20"><strong>Table Name</strong></td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">AccountTaxLineInfo</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">Barcode</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">BillLinkedTxn</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">BillPaymentCheckLineLinkedTxn</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">BillPaymentCreditCardLineLinkedTxn</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">BillToPay</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">ChargeLinkedTxn</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">Company</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">CompanyActivity</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">CreditMemoLinkedTxn</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">CustomerShipToAddress</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">CustomField</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">EmployeeAddtionalNote</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">Entity</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">EntityAdditionalNote</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">EntityContacts</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">EntityShipToAddress</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">EstimateLinkedTxn</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">Host</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">HostMetaData</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">HostSupportedVersions</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">InvoiceLinkedTxn</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">Item</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">ItemAssembliesCanBuild</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">ItemReceiptLinkedTxn</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">ItemSites</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">JournalEntryLine</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">ListDeleted</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">PayrollItemNonWage</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">Preferences</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">PurchaseOrderLinkedTxn</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">ReceivePaymentLineLinkedTxn</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">ReceivePaymentToDeposit</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">Sales</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">SalesLine</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">SalesOrderLinkedTxn</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">SalesTaxPaymentCheck</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">SalesTaxPaymentCheckLine</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">Template</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">Transaction</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">TxnDeleted</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">VendorContacts</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">VendorCreditLinkedTxn</td>
</tr>
<tr style="height: 15.0pt;">
<td class="xl66" style="height: 15.0pt; border-top: none;" height="20">WorkersCompCodeRateHistory</td>
</tr>
<!-- [if supportMisalignedColumns]-->
<tr style="display: none;">
<td style="width: 173pt;" width="231">&nbsp;</td>
</tr>
<!--[endif]--></tbody>
</table>
<p>To know which tables/fields support insert/update. Please visit <a href="http://qodbc.com/schema.htm" target="_blank">QODBC Data Layouts</a>.</p>
<p>Click on the region of the QuickBooks edition you are using. Click "ALPHABETICAL LISTING OF ALL TABLES" under the "TABLE OVERVIEW" label &amp; find the TableName for which you want to check the schema, and click the "Detail" link.</p>
<p>You will find QUERYABLE, UPDATEABLE, INSERTABLE, and REQUIRED ON INSERT columns against each field.</p>
<p>This will help you determine which fields are allowed in select, update, and insert queries.</p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - MS Access and QuickBooks freeze (Not Responding) when accessing the first time]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2949]]></link>
<guid isPermaLink="false"><![CDATA[e07bceab69529b0f0b43625953fbf2a0]]></guid>
<pubDate><![CDATA[Tue, 29 Aug 2017 07:12:13 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - MS Access and QuickBooks freeze (Not Responding) when accessing for the first time
Problem Description:
When pushing data from the Access database to QuickBooks, the QODBC message indicates waiting on QuickBooks, and both Access and Q...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - MS Access and QuickBooks freeze (Not Responding) when accessing for the first time</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>When pushing data from the Access database to QuickBooks, the QODBC message indicates waiting on QuickBooks, and both Access and QuickBooks freeze (Not Responding). This is happening with a new user on this PC. Other users can log in, which usually works, but this user cannot push data from Access to QuickBooks. We have reviewed permissions for the user in QuickBooks and Active Directory, and they are all the same as those of working users. Is any special permission needed for this to work? This issue is urgent. Please advise.</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>You may face QuickBooks and Access and QuickBooks freeze (Not Responding) issues when accessing the table for the first time because QODBC is building an optimizer for that table in the background.</p>
<p>Please refer to&nbsp;<a href="https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2942" target="_blank">How Optimizer Works</a> for more details.</p>
<p>Please rebuild the optimizer file &amp; check again. Refer: <a href="https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2453" target="_blank">Getting the limited number of records, or a Few of the documents is Missing in the QODBC Table result</a> Rebuild Optimizer file section.</p>
<p>Please also enable the QODBC status panel via QODBC Setup Screen-&gt;Message Window-&gt;Select "Display Driver Status" and "Display optimizer Status" options. Refer to how<a href="https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2550" target="_blank">&nbsp;to view details on what QODBC is performing</a> for more information.</p>
<p>After building the Optimizer file, when you run the query, QODBC will check for any changes to QuickBooks Data &amp; update it in the Optimizer file. So you will not face a Not Responding issue in QuickBooks &amp; your application.</p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - How to find Estimate to Invoice conversion time]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2948]]></link>
<guid isPermaLink="false"><![CDATA[15c00b5250ddedaabc203b67f8b034fd]]></guid>
<pubDate><![CDATA[Fri, 18 Aug 2017 13:10:15 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - How to find an Estimate for Invoice conversion time
Problem Description:
I am using MS Excel to access QuickBooks Data through QODBC. I have Estimate &amp; some of the Estimates are converted to QuickBooks. I want to know how many Est...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - How to find an Estimate for Invoice conversion time</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>I am using MS Excel to access QuickBooks Data through QODBC. I have Estimate &amp; some of the Estimates are converted to QuickBooks. I want to know how many Estimates are converted to Invoice &amp; what the conversion time is.</p>
<p>I need the Estimate RefNumber, Date, Customer, Value, Invoice RefNumber, Date, Value, and Days to Convert.</p>
<p>How can I find an Estimate for Invoice conversion time?</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>Please <a href="http://support.flexquarters.com/esupport/newimages/INVCONV/Estimate-Invoice-Conversion.zip">click here</a>&nbsp;to download the Sample Excel file.</p>
<p>You can find the Estimate for Invoice conversion time in the steps below.</p>
<p>Please start Microsoft Excel &amp; open a new Workbook. An Empty sheet will open, and you shall be on the "Home" tab:</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCONV/step1.png" alt="" /></p>
<p>Please select the "Data" tab and click "From Other Sources-&gt; From Microsoft Query."</p>
<p>Note: In recent versions of Microsoft Excel (including Excel 365), the Microsoft Query (Legacy) feature is hidden by default from the Get Data tab.<br /> Please refer to&nbsp;<a href="https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/3092" target="_blank">Troubleshooting - How to enable Microsoft Excel 365 - Legacy Microsoft Query</a>.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCONV/step2.png" alt="" /></p>
<p>It will take some time to get the DSN list. And then, in the "Choose Data Source" Window, please select a DSN to continue. (Here, I choose the default data source, "QuickBooks Data," with a sample company file open. And check to use the Query Wizard to create/edit queries. :</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCONV/step3.png" alt="" /></p>
<p>Please Note: If you have 64-bit MS Office, you must use QRemote 64-bit DSN "<strong>QuickBooks Data 64-bit QRemote.</strong>"</p>
<p>The first time you use MS Excel to access QuickBooks, you will be asked to grant access permission for QODBC:</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/2360/step10.png" alt="" /></p>
<p>Select the "Yes, always" option, and click the "Continue" button in the next window. Click the "Done" button to finish authorizing.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/2360/step11.png" alt="" /></p>
<p>After you grant permission for QODBC, you will be guided by the Query Wizard. In the Choose Columns window, please click "Cancel" to write the query in Microsoft Query.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCONV/step4.png" alt="" /></p>
<p>Please click "Yes" to write the query in Microsoft Query.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCONV/step5.png" alt="" /></p>
<p>In the Add Tables window, a list of tables is available. Please click "Close" to open the MS Query editor.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCONV/step6.png" alt="" /></p>
<p>Click the "SQL" button to write an SQL Statement.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCONV/step7.png" alt="" /></p>
<p>We will use the query below to find the Estimate to Invoice conversion time &amp; paste it into the "SQL Statement" box and click "OK."</p>
<p>SELECT Estimate.RefNumber as "Estimate RefNo," Estimate.TxnDate as EstimateDate, Estimate. the total amount as EstimateValue, Estimate.CustomerRefFullName as CustomerName, InvoiceLinkedTxn.TxnDate as InvoiceDate, InvoiceLinkedTxn.RefNumber as "Invoice RefNo," InvoiceLinkedTxn.AppliedAmount as InvoiceValue, (InvoiceLinkedTxn.TxnDate - Estimate.TxnDate) As ConversionDay FROM Estimate Left outer JOIN InvoiceLinkedTxn ON InvoiceLinkedTxn.LinkedTxnTxnID = Estimate.TxnID</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCONV/step8.png" alt="" /></p>
<p>Please click "OK" to continue the execution of the query.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCONV/step9.png" alt="" /></p>
<p>The result is available in the Microsoft Query editor window.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCONV/step10.png" alt="" /></p>
<p>Please select "File" &gt;&gt; "Return Data to Microsoft Excel" to export the result to Excel.</p>
<p>&nbsp;</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCONV/step11.png" alt="" /></p>
<p>Please select "Existing Worksheet" and click "OK" to export the result to Excel.</p>
<p>&nbsp;</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCONV/step12.png" alt="" /></p>
<p>The result is available in an Excel sheet. As you see, the column alias is not working.</p>
<p>&nbsp;</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCONV/step13.png" alt="" /></p>
<p>We will add an alias by editing the query by clicking the "Data" &amp; "Connection" buttons.</p>
<p>&nbsp;</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCONV/step14.png" alt="" /></p>
<p>Please select the query &amp; click the "Properties..." button.</p>
<p>&nbsp;</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCONV/step15.png" alt="" /></p>
<p>Please navigate to the "Definition" tab &amp; paste the below query in the "Command Text" box and click "OK."</p>
<p>&nbsp;</p>
<p>SELECT Estimate.RefNumber as "Estimate RefNo," Estimate.TxnDate as EstimateDate, Estimate. the total amount as EstimateValue, Estimate.CustomerRefFullName as CustomerName, InvoiceLinkedTxn.TxnDate as InvoiceDate, InvoiceLinkedTxn.RefNumber as "Invoice RefNo," InvoiceLinkedTxn.AppliedAmount as InvoiceValue, (InvoiceLinkedTxn.TxnDate - Estimate.TxnDate) As ConversionDay FROM Estimate Left outer JOIN InvoiceLinkedTxn ON InvoiceLinkedTxn.LinkedTxnTxnID = Estimate.TxnID</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCONV/step16.png" alt="" /></p>
<p>Please click "Close" to close the workbook connection window.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCONV/step17.png" alt="" /></p>
<p>The result is available in an Excel sheet with a column alias.</p>
<p>&nbsp;</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCONV/step18.png" alt="" /></p>
<p><strong>Note:</strong> Case When a statement is not working in MS Query. Alternative to Case: When information is an IIF statement, but IIF statements are not supported in QODBC.</p>
<p>Also, Refer:</p>
<p><a href="https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2626">Troubleshooting - Cannot use alias in MS Query</a></p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - Who Created an Invoice/SalesOrder]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2947]]></link>
<guid isPermaLink="false"><![CDATA[ad8e88c0f76fa4fc8e5474384142a00a]]></guid>
<pubDate><![CDATA[Fri, 18 Aug 2017 13:03:18 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - Who Created an Invoice/Sales Order
Problem Description:
We don't have an operational problem, just a SQL/technical question -- we are currently pulling invoices like this:
SELECT * FROM Invoice WHERE RefNumber ='221206' (works great)...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - Who Created an Invoice/Sales Order</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>We don't have an operational problem, just a SQL/technical question -- we are currently pulling invoices like this:</p>
<p>SELECT * FROM Invoice WHERE RefNumber ='221206' (works great)</p>
<p>But it does NOT tell which QuickBooks user CREATED/ENTERED the Invoice/SalesOrder. (We do NOT use Sales Reps, we want to know the actual user who typed in the order.</p>
<p>Where can we find this information? Can I use the TxnID from the Invoice or SalesLine in another table to determine who entered that Invoice or line item?</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>QODBC is an ODBC driver for QuickBooks. It uses the QuickBooks SDK to communicate with QuickBooks, which means if Intuit doesn't expose one feature to the application in the SDK, QODBC cannot do it either.</p>
<p>I'm sorry to inform you that the QuickBooks user details who created/entered the Invoice/SalesOrder are unavailable through the Intuit SDK, so they are not available through QODBC.</p>
<p>As a workaround, you can create the custom field with the name (QBUser) in the customer center &amp; you can use it on Invoice/SalesOrder. You need to make the custom field in the customer &amp; define this field in the Invoice template.</p>
<p>Once you define the custom field in Invoice/SalesOrder, you can store QBUser details on the custom field, which is also available in the QODBC Invoice/InvoiceLine table with the name CustomField+(Field name you created). If you made the custom field with the QBUser in QODBC, you could find the column "CustomFieldQBUser."</p>
<p>You can get the custom field in QODBC after defining custom fields in QuickBooks.</p>
<p><strong>Note:</strong> You need to disconnect the connection between QODBC &amp; QuickBooks and Reconnect to get the Custom Field. Custom Field will display in QODBC after resetting the connection.</p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-ALL] Troubleshooting - Getting error A four-part name was supplied, but the provider does not expose the necessary interfaces to use a catalog or schema.]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2943]]></link>
<guid isPermaLink="false"><![CDATA[6e82873a32b95af115de1c414a1849cb]]></guid>
<pubDate><![CDATA[Wed, 26 Jul 2017 10:02:33 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - Getting error: A four-part name was supplied, but the provider does not expose the necessary interfaces to use a catalog or schema. 
Problem Description:
 I am using QODBC to fetch QuickBooks Data in SQL Server. I have created a Linke...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - Getting error: A four-part name was supplied, but the provider does not expose the necessary interfaces to use a catalog or schema. </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;"> I am using QODBC to fetch QuickBooks Data in SQL Server. I have created a Linked Server in SQL Server.<br /><br /> We are receiving the following error when trying to fetch data.<br /><br /> The SQL is:<br /> SELECT * FROM [QREMOTE].[QODBC].[Company]<br /><br /> The error is:<br /> Msg 7399, Level 16, State 1, Line 4<br /> The OLE DB provider "MSDASQL" for the linked server "QREMOTE" reported an error. The provider did not give any information about the error.<br /><br /> Msg 7312, Level 16, State 1, Line 4<br /> Invalid use of schema or catalog for OLE DB provider "MSDASQL" for linked server "QREMOTE." A four-part name was supplied, but the provider does not expose the necessary interfaces to use a catalog or schema. </span></p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/FourPart/step1.png" alt="" /></p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;"> You have used the wrong SQL statement. It would be best if you used LinkedServerName &amp; table name in the query.<br /><br /> For Example:<br /> Select * from YourLinkedServerName...TableName<br /> SELECT * FROM [QREMOTE]...[Company] </span></p>
<p align="center">&nbsp;<img src="//support.flexquarters.com/esupport/newimages/FourPart/step2.png" alt="" /></p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-ALL] How QODBC Optimizer Works]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2942]]></link>
<guid isPermaLink="false"><![CDATA[2a0f97f81755e2878b264adf39cba68e]]></guid>
<pubDate><![CDATA[Wed, 26 Jul 2017 09:55:48 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[How QODBC Optimizer Works 
Problem Description:
I am using QODBC to access QuickBooks Data. I am using the QODBC optimizer, and I want to know more about how the optimizer works.
I can connect to QODBC, but when I fetch any table, it takes a lot of tim...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">How QODBC Optimizer Works </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>I am using QODBC to access QuickBooks Data. I am using the QODBC optimizer, and I want to know more about how the optimizer works.</p>
<p>I can connect to QODBC, but when I fetch any table, it takes a lot of time.</p>
<p>I can fetch records from a few tables, but for other tables, QODBC is just processing and not returning any records.</p>
<p>&nbsp;</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>The optimizer brings some data to a local cache to increase query retrieval performance. Below is the default setting of QODBC Optimizer.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/OPTWORK/step1.png" alt="" /></p>
<p data-start="284" data-end="473">The <strong data-start="288" data-end="307">QODBC Optimizer</strong> is designed to improve performance when accessing QuickBooks data by caching results locally. This article explains how the optimizer works by default, step-by-step.</p>
<p data-start="284" data-end="473">When you run a query through QODBC (for example, <code data-start="543" data-end="566">SELECT * FROM Invoice</code>), QODBC communicates with the QuickBooks SDK to retrieve the requested data. Since the QuickBooks company file is <strong data-start="681" data-end="711">not a traditional database</strong>, but rather a <strong data-start="726" data-end="746">flat file system</strong>, data retrieval and conversion are handled in a specialized way to optimize speed and reliability.</p>
<p data-start="284" data-end="473">&nbsp;</p>
<p>Here is how the optimizer works with the default configuration.</p>
<h3 data-start="852" data-end="876">Step-by-Step Process</h3>
<h4 data-start="878" data-end="910"><strong data-start="883" data-end="910">Step 1: Query Execution</strong></h4>
<p data-start="911" data-end="939">You execute a query such as:</p>
<div class="contain-inline-size rounded-2xl relative bg-token-sidebar-surface-primary">
<div class="sticky top-9">&nbsp;</div>
<div class="overflow-y-auto p-4" dir="ltr"><code class="whitespace-pre!"><span class="hljs-keyword">SELECT</span> <span class="hljs-operator">*</span> <span class="hljs-keyword">FROM</span> Invoice </code></div>
</div>
<h4 data-start="971" data-end="1012"><strong data-start="976" data-end="1012">Step 2: Check for Optimizer Data</strong></h4>
<p data-start="1013" data-end="1133">QODBC checks the <strong data-start="1030" data-end="1049">Optimizer Table</strong> to see if data for the requested table (in this example, <em data-start="1107" data-end="1116">Invoice</em>) already exists.</p>
<h4 data-start="1135" data-end="1177"><strong data-start="1140" data-end="1177">Step 3: First-Time Data Retrieval</strong></h4>
<p data-start="1178" data-end="1228">Assuming there are 50,000 records in the Invoice table.</p>
<p data-start="1178" data-end="1228">If this is the <strong data-start="1193" data-end="1207">first time</strong> accessing the table:</p>
<ul data-start="1229" data-end="1560">
<li data-start="1229" data-end="1381">
<p data-start="1231" data-end="1381">QODBC retrieves all records from QuickBooks, including data from related child tables (for example, <code data-start="1331" data-end="1340">Invoice</code>, <code data-start="1342" data-end="1355">InvoiceLine</code>, and <code data-start="1361" data-end="1379">InvoiceLinkedTxn</code>).</p>
</li>
<li data-start="1382" data-end="1477">
<p data-start="1384" data-end="1477">The QuickBooks SDK returns data in <strong data-start="1419" data-end="1433">XML format</strong>, in batches of <strong data-start="1449" data-end="1476">500 records per request</strong>.</p>
</li>
<li data-start="1478" data-end="1557">
<p data-start="1480" data-end="1557">QODBC converts this XML data into a table format for use by your application.</p>
</li>
</ul>
<blockquote data-start="1561" data-end="1707">
<p data-start="1563" data-end="1707"><strong data-start="1563" data-end="1572">Note:</strong> Since this is a full data retrieval, it may take some time. Please do <strong data-start="1643" data-end="1681">not close or terminate the process</strong> during this initial load.</p>
</blockquote>
<h4 data-start="1709" data-end="1751"><strong data-start="1714" data-end="1751">Step 4: Data Storage in Optimizer</strong></h4>
<p data-start="1752" data-end="1778">After retrieving the data:</p>
<ul data-start="1779" data-end="1895">
<li data-start="1779" data-end="1830">
<p data-start="1781" data-end="1830">QODBC saves the data into the <strong data-start="1811" data-end="1829">Optimizer File</strong>.</p>
</li>
<li data-start="1831" data-end="1895">
<p data-start="1833" data-end="1895">The optimizer records the <strong data-start="1859" data-end="1872">timestamp</strong> of the data retrieval.</p>
</li>
</ul>
<h4 data-start="1897" data-end="1942"><strong data-start="1902" data-end="1942">Step 5: Data Returned to Application</strong></h4>
<p data-start="1943" data-end="2054">Once the optimizer is updated, QODBC reads from the optimizer file and returns the results to your application.</p>
<h4 data-start="2056" data-end="2091"><strong data-start="2061" data-end="2091">Step 6: Subsequent Queries</strong></h4>
<p data-start="2092" data-end="2165">The next time you execute the same query (e.g., <code data-start="2140" data-end="2163">SELECT * FROM Invoice</code>):</p>
<ol data-start="2166" data-end="2445">
<li data-start="2166" data-end="2222">
<p data-start="2169" data-end="2222">QODBC again checks the Optimizer Table for <code data-start="2212" data-end="2221">Invoice</code>.</p>
</li>
<li data-start="2223" data-end="2317">
<p data-start="2226" data-end="2317">It finds that the data already exists and retrieves the <strong data-start="2282" data-end="2316">last synchronization timestamp</strong>.</p>
</li>
<li data-start="2318" data-end="2445">
<p data-start="2321" data-end="2445">QODBC requests only the <strong data-start="2345" data-end="2356">changes</strong> (added, modified, or deleted records) since the last timestamp using the QuickBooks SDK.</p>
</li>
</ol>
<h4 data-start="2447" data-end="2476"><strong data-start="2452" data-end="2476">Step 7: Delta Update</strong></h4>
<p data-start="2477" data-end="2570">Because QODBC now retrieves <strong data-start="2505" data-end="2526">only changed data</strong>, the process is much faster.<br data-start="2555" data-end="2558" /> For example:</p>
<ul data-start="2571" data-end="2727">
<li data-start="2571" data-end="2659">
<p data-start="2573" data-end="2659">Out of 50,000 total records, only 60 have changed (40 modified, 10 added, 10 deleted).</p>
</li>
<li data-start="2660" data-end="2727">
<p data-start="2662" data-end="2727">QODBC processes only those 60 records instead of the full 50,000.</p>
</li>
</ul>
<h4 data-start="2729" data-end="2762"><strong data-start="2734" data-end="2762">Step 8: Optimizer Update</strong></h4>
<p data-start="2763" data-end="2839">QODBC applies the delta changes to the optimizer file to keep it up to date.</p>
<h4 data-start="2841" data-end="2877"><strong data-start="2846" data-end="2877">Step 9: Return Updated Data</strong></h4>
<p data-start="2878" data-end="3003">Finally, QODBC reads the updated data from the optimizer file and returns the complete result set to the calling application.</p>
<p data-start="2878" data-end="3003">&nbsp;</p>
<h3 data-start="3010" data-end="3036">Key Points to Remember</h3>
<ul data-start="3037" data-end="3322">
<li data-start="3037" data-end="3139">
<p data-start="3039" data-end="3139">The <strong data-start="3043" data-end="3058">first query</strong> on any table will take longer because QODBC must retrieve and cache all records.</p>
</li>
<li data-start="3140" data-end="3230">
<p data-start="3142" data-end="3230"><strong data-start="3142" data-end="3164">Subsequent queries</strong> are significantly faster, as only new or changed data is fetched.</p>
</li>
<li data-start="3231" data-end="3322">
<p data-start="3233" data-end="3322"><strong data-start="3233" data-end="3253">Do not interrupt</strong> the first-time data load process to avoid incomplete optimizer data.</p>
</li>
</ul>
<p>&nbsp;</p>
<p><strong>Question</strong>:</p>
<p>I am fetching the top 10 records from Invoice (or any other table), and QODBC is still reading all the records from QuickBooks.</p>
<p><strong>Answer</strong>:</p>
<p>If you are not using the optimizer or if you are querying the table for the first time, QODBC will have to build the optimizer before returning the records.</p>
<p>Even if you have requested the top 10, QODBC has to fetch all the records from QuickBooks to show the result matching the criteria.</p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-ALL] Using Optimizer Off for selected tables in MS-Access linked table]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2941]]></link>
<guid isPermaLink="false"><![CDATA[4b21cf96d4cf612f239a6c322b10c8fe]]></guid>
<pubDate><![CDATA[Wed, 12 Jul 2017 14:35:36 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[Using Optimizer Off for selected tables in MS-Access linked table 
Problem Description:
I am using QODBC to access QuickBooks Data. I have linked all QuickBooks tables using QODBC.
I want the Customer table to be Optimizer OFF and the rest to be Optimi...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">Using Optimizer Off for selected tables in MS-Access linked table </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>I am using QODBC to access QuickBooks Data. I have linked all QuickBooks tables using QODBC.</p>
<p>I want the Customer table to be Optimizer OFF and the rest to be Optimizer ON.</p>
<p>How can I achieve this?</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>It would be best if you had the Customer table to be Optimizer OFF and the rest of the tables to be Optimizer ON. I suggest using a separate DSN with Optimizer Off for the Customer table.</p>
<p>You need to create a new QODBC DSN through Configure QODBC Data Source.</p>
<p>You can open Configure QODBC Data Source from Start &gt;&gt; All Programs &gt;&gt; QODBC Driver for use with QuickBooks &gt;&gt; Configure QODBC Data Source.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAOPTOFF/step1.png" alt="" /></p>
<p>Click on the "System DSN" tab to create a DSN that both Windows applications and services can call. Click on the "Add" button to create a new DSN.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAOPTOFF/step2.png" alt="" /></p>
<p>Select the "QODBC Driver for QuickBooks" option and click on the "Finish" button.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAOPTOFF/step3.png" alt="" /></p>
<p>Name your new DSN as "QuickBooks Data-OPT-OFF."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAOPTOFF/step4.png" alt="" /></p>
<p>Switch to the "Optimizer" tab/window and uncheck the "Use Optimizer" option, &amp; Click "Apply" followed by "OK" to save the DSN configuration.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAOPTOFF/step5.png" alt="" /></p>
<p>Start QuickBooks login to the Company File as Admin. Start QuickBooks login to the Company File as Admin. Start QuickBooks login to the Company File as Admin. New DSN created. Close the ODBC Manager by clicking "OK."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAOPTOFF/step6.png" alt="" /></p>
<p>&nbsp;</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAOPTOFF/step7.png" alt="" /></p>
<p>Switch to your MS-Access application. Right-click on Linked tables and select "Linked Table Manager". Right-click on Linked tables and select "Linked Table Manager". Right-click on Linked tables and select "Linked Table Manager". I have linked all tables in the MS Access Database using the "QuickBooks Data" DSN with the Optimizer ON option.&nbsp;</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAOPTOFF/step8.png" alt="" /></p>
<p>From the list of tables, select the Customer table &amp; enable the "Always prompt for a new location" option, and click "OK."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAOPTOFF/step9.png" alt="" /></p>
<p>From the DSN list, select the newly created DSN from "Machine Data Source." Instead of using "QuickBooks Data," Select "QuickBooks Data-OPT-OFF."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAOPTOFF/step10.png" alt="" /></p>
<p>The linked table has been refreshed.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAOPTOFF/step11.png" alt="" /></p>
<p>Customer table DSN is changed to "QuickBooks Data-OPT-OFF" from "QuickBooks Data." Close "Linked Table Manager" by clicking the "Close" button.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAOPTOFF/step12.png" alt="" /></p>
<p>This way, MS Access will create a new Connection to QuickBooks Data-OPT-OFF (Optimizer Off - when accessing the Customer table). For the rest of the tables, MS Access will use QuickBooks Data (Optimizer On).</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - &quot;Transactions&quot; table, but they don't appear to &quot;balance&quot;]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2940]]></link>
<guid isPermaLink="false"><![CDATA[8e930496927757aac0dbd2438cb3f4f6]]></guid>
<pubDate><![CDATA[Thu, 06 Jul 2017 12:22:34 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - "Transactions" table, but they don't appear to "balance."
Problem Description:
I am attempting to extract data from a client's hosted QuickBooks Enterprise system. I need every transaction in the system as we are transitioning to a di...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - "Transactions" table, but they don't appear to "balance."</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>I am attempting to extract data from a client's hosted QuickBooks Enterprise system. I need every transaction in the system as we are transitioning to a different approach. I have removed all of the records from the "Transactions" table, but they don't appear as a "balance." I think the amount column should net to zero, as the credits (negative) Amount should be offset against the debits (positive) amounts.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/NotInBalance/step7.png" alt="" /></p>
<p>&nbsp;</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>In the Transaction table, the total of Credit (negative) will not match the sum of Debit because the transaction table has additional rows for the subtotal.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/NotInBalance/step8.png" alt="" /></p>
<p>&nbsp;</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/NotInBalance/step2.png" alt="" /></p>
<p>&nbsp;</p>
<p>You have to exclude all such records/rows having AccountRefListID/AccountRefFullName as empty. You can exclude blank AccountRefListID/AccountRefFullName by clicking the column filter, unchecking "Blanks," &amp; click "OK."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/NotInBalance/step3.png" alt="" /></p>
<p>&nbsp;</p>
<p>You may also have to format the Amount column to Number (show two decimal values) to avoid any round-off issues in Excel.</p>
<p>You can format cells by right-clicking on the "Amount" column &amp; click "Format Cells."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/NotInBalance/step4.png" alt="" /></p>
<p>&nbsp;</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/NotInBalance/step5.png" alt="" /></p>
<p>&nbsp;</p>
<p>After applying the above changes, you will notice that the Amount appears in balance.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/NotInBalance/step6.png" alt="" /></p>
<p>&nbsp;</p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - QODBC CustomSummary report not reconciling with QuickBooks CustomSummary.]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2934]]></link>
<guid isPermaLink="false"><![CDATA[5dc126b503e374b0e08231344a7f493f]]></guid>
<pubDate><![CDATA[Thu, 15 Jun 2017 10:23:28 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - QODBC CustomSummary report is not reconciling with QuickBooks CustomSummary. 
Problem Description:
I am running the QODBC report "CustomSummary" and comparing it to what should be the identical report in QuickBooks. I am encountering ...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - QODBC CustomSummary report is not reconciling with QuickBooks CustomSummary. </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>I am running the QODBC report "CustomSummary" and comparing it to what should be the identical report in QuickBooks. I am encountering an issue where the Balance Sheet accounts report zero amounts (vs. the values I see in QuickBooks). In contrast, the Income Statement accounts report the correct amount.</p>
<p>Could you advise if there is a parameter I need to change when running the stored procedure?</p>
<p>The procedure I am running is as follows:</p>
<p>sp_report CustomSummary show Label, Amount parameters DateMacro = 'LastYear', SummarizeRowsBy = 'Account', SummarizeColumnsBy = 'Month', Calendar = 'FiscalYear', ReturnRows = 'All', ReturnColumns = 'All'</p>
<p>I have set up the parameters below in the QuickBooks UI.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CSRPT/step1.png" alt="" /></p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CSRPT/step2.png" alt="" /></p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CSRPT/step3.png" alt="" /></p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>You are facing a mismatch issue because QuickBooks SDK is passing the parameter AccountFilterType='IncomeAndExpense' by default in the report query &amp; you have removed the Account Filter parameter from the QuickBooks UI.</p>
<p>There is no option to remove the default account filter from the report query.</p>
<p>This is a limitation of the QuickBooks SDK, which does not support removing the default account filter.</p>
<p>QODBC is an ODBC driver for QuickBooks. It uses the QuickBooks SDK to communicate with QuickBooks, which means if Intuit doesn't expose one feature to the application in the SDK, QODBC cannot do it either.</p>
<p>We have raised an enhancement request, QBWG-47383, at Intuit's end to support removing the default account filter through the QuickBooks SDK.</p>
<p>As a workaround, you need to follow the procedure below.</p>
<p>Run the report twice &amp; export it in two separate Excel sheets.</p>
<p>Refer: <a href="https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2405" target="_blank">How to create sp_reports using Microsoft Excel</a></p>
<p>1st using the filter AccountFilterType= 'BalanceSheet' (returning all rows and columns)</p>
<p>sp_report CustomSummary show Label, Amount parameters DateMacro = 'LastYear', SummarizeRowsBy = 'Account', SummarizeColumnsBy = 'Month', Calendar = 'FiscalYear', ReturnRows = 'All', ReturnColumns = 'All',AccountFilterType= 'BalanceSheet'</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CSRPT/step4.png" alt="" /></p>
<p>2nd, use the filter AccountFilterType='IncomeAndExpense' (returning all rows and columns).</p>
<p>sp_report CustomSummary show Label, Amount parameters DateMacro = 'LastYear', SummarizeRowsBy = 'Account', SummarizeColumnsBy = 'Month', Calendar = 'FiscalYear', ReturnRows = 'All', ReturnColumns = 'All',AccountFilterType= 'IncomeAndExpense'</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CSRPT/step5.png" alt="" /></p>
<p>Then join the two resulting datasets for the amount fields &amp; update based on the logic of the 1st dataset amount minus the 2nd dataset amount (as the IncomeAndExpense amounts need to have their signs reversed). This produces the same result as running the Custom Summary report out of the UI with no AccountType filter.</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-ALL] How to export QuickBooks Invoices into MS Access report format]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2933]]></link>
<guid isPermaLink="false"><![CDATA[25766f01628f3d34b93a36a2301dffc9]]></guid>
<pubDate><![CDATA[Thu, 15 Jun 2017 10:11:13 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ How to export QuickBooks Invoices into MS Access report format 
Problem Description:
I would like to know if QODBC will convert QuickBooks Pro Desktop invoices into Microsoft Access.
The attached invoice is similar to what we&nbsp;need to export to Ac...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> How to export QuickBooks Invoices into MS Access report format </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>I would like to know if QODBC will convert QuickBooks Pro Desktop invoices into Microsoft Access.</p>
<p>The attached invoice is similar to what we&nbsp;need to export to Access. It doesn't have to be exact, but it needs to be able to show the descriptions, etc.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step1.png" alt="" /></p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>You can export QuickBooks Invoices into an MS Access report format using QODBC.</p>
<p>The first step is to create a new MS Access database &amp; link the InvoiceLine table to MS Access.</p>
<p>Open MS Access. You can find it via Windows Start-&gt;All Programs-&gt;Microsoft Office.</p>
<p>&nbsp;</p>
<p>A default database filename, Database1, appears in the box. You can edit this to a more relevant name, such as QuickBooks Link. accdb. Save the file as type "Microsoft Office Access Databases."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step2.png" alt="" /></p>
<p>Then, click "Create" to create a blank database.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step3.png" alt="" /></p>
<p>After the new database is created, navigate to "External Data":</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step4.png" alt="" /></p>
<p>Build a connection via External Data-&gt;More-&gt;ODBC Database, or directly click the ODBC database button on the External Data menu:</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step5.png" alt="" /></p>
<p>Under the Get External Data window, you will get two options. We will use "Link to the data source by creating a linked table":</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step6.png" alt="" /></p>
<p>After selecting the access method and clicking OK, you will get a Select Data Source window.</p>
<p>Select the <strong>QuickBooks Data</strong> DSN you set up with the QODBC driver. This can be one of our pre-installed DSN names or one that you have created. (Here, I choose the default DSN as the Example.)</p>
<p>For 64-bit MS Office, change QRemote DSN to <strong>QuickBooks Data. 64-bit QRemote</strong>&nbsp;is the default DSN created when installing QODBC.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step7.png" alt="" /></p>
<p>Access will return a list of available tables in the Select Tables window. Please select the tables you want to extract data from. In this example, I am selecting the InvoiceLine table.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step8.png" alt="" /></p>
<p>The linked table was added to MS Access.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step9.png" alt="" /></p>
<p>Now, we will design a new report from Create-&gt;Report Wizard.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step17.png" alt="" /></p>
<p>The Report Wizard shows the linked table &amp; available fields.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step18.png" alt="" /></p>
<p>Select the fields you want to show in the report &amp; click "Next."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step19.png" alt="" /></p>
<p>Report Wizard showing selected fields. Click "Next" for more configuration.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step20.png" alt="" /></p>
<p>You can sort records in ascending or descending order up to four fields &amp; click "Next."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step21.png" alt="" /></p>
<p>Select report Layout &amp; click "Next."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step22.png" alt="" /></p>
<p>Insert the report name &amp; select "Modify the report's design," &amp; click "Finish" to design a report.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step23.png" alt="" /></p>
<p>The report design window is opened, &amp; Drag the table field into the report as per your requirement &amp; design the information.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step24.png" alt="" /></p>
<p>Select the table field assigns a group to the table fields by clicking the "Add a Group" button.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step25.png" alt="" /></p>
<p>The select field for Group. In this example, I have selected "TxnID" all group fields are grouped for a particular TxnID.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step26.png" alt="" /></p>
<p>The Group is created. Click "More."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step29.png" alt="" /></p>
<p>Select "With a header section" &amp; "With a footer section" to enable Group Header &amp; Footer.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step27.png" alt="" /></p>
<p>If you want to print one invoice per page (i.e., only one invoice on a single page), click on the group footer for TxnID &amp; set the Force New Page property box drop-down arrow, and select Before Section.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step28.png" alt="" /></p>
<p>The report is designed. You can add labels &amp; assign a group to table fields. You can view the information by clicking on "View."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step12.png" alt="" /></p>
<p>The actual report will look as follows in View mode.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step13.png" alt="" /></p>
<p>You can select "Print Preview" mode to see all Invoice reports.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step14.png" alt="" /></p>
<p>The Invoices in MS Access report format are shown below.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step15.png" alt="" /></p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/MSAINVRPT/step16.png" alt="" /></p>
<p>Please <a href="https://support.flexquarters.com/esupport/newimages/MSAINVRPT/InvoiceReport.zip">click here</a>&nbsp;to download the Sample Report.</p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-ALL] How to export QuickBooks Invoices into Crystal Report format]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2932]]></link>
<guid isPermaLink="false"><![CDATA[c429429bf1f2af051f2021dc92a8ebea]]></guid>
<pubDate><![CDATA[Thu, 15 Jun 2017 09:54:51 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ How to export QuickBooks Invoices into Crystal Report format 
Problem Description:
I would like to know if QODBC will convert QuickBooks Pro Desktop invoices into Crystal Reports.
The attached invoice is similar to what we&nbsp;need to export to Cryst...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> How to export QuickBooks Invoices into Crystal Report format </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>I would like to know if QODBC will convert QuickBooks Pro Desktop invoices into Crystal Reports.</p>
<p>The attached invoice is similar to what we&nbsp;need to export to Crystal Reports. It doesn't have to be exact, but it needs to be able to show the descriptions, etc.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step1.png" alt="" /></p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>You can export QuickBooks Invoices into Crystal Report format using QODBC.</p>
<p>The first step is to create a new report.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step2.png" alt="" /></p>
<p>The Database Expert Window will be open. Expand the "Create New Connection" Folder:</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step3.png" alt="" /></p>
<p>Expand the "ODBC (RDO)" Folder:</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step4.png" alt="" /></p>
<p>The following screen will appear. Select "QuickBooks Data" DSN and click "Next," finally click "Finish" on this screen:</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step5.png" alt="" /></p>
<p>There is no UserID and Password required for connecting to QuickBooks Data using QODBC. So you can click "Finish" directly.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step6.png" alt="" /></p>
<p>A list of QuickBooks tables will appear, and is ready for selection:</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step7.png" alt="" /></p>
<p>Crystal Report will return a list of available tables in the Select Tables window. Please select the tables you want to extract data from. In this example, I am selecting the InvoiceLine table.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step8.png" alt="" /></p>
<p>For the table added to Crystal Report, click "Next" to add table fields to the report.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step9.png" alt="" /></p>
<p>The Report Wizard shows the table &amp; available fields.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step33.png" alt="" /></p>
<p>Now, select the field which you want to show in the report by clicking the "&gt;" button &amp; click "Next."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step10.png" alt="" /></p>
<p>Add group information to the report. We will group data by selecting the TxnID field and clicking the "&gt;" button, then clicking "Finish."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step11.png" alt="" /></p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step12.png" alt="" /></p>
<p>The report designer will show selected fields.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step13.png" alt="" /></p>
<p>Now, we will add Customer details, Billing &amp; Shipping details, TxnDate, RefNumber, Terms, and DueDate in the Group Header section. We will add InvoiceLine information (i.e., Item, Description, Quantity, Rate &amp; Amount field) in the detail section. We will add SubTotal in the Group Footer section.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step14.png" alt="" /></p>
<p>You can add the caption in the report data using Text Object from the Menu Insert &gt;&gt; Text Object.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step15.png" alt="" /></p>
<p>In this example, I have added the following Text Objects.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step16.png" alt="" /></p>
<p>You can draw the box in the report using Menu Insert &gt;&gt; Box.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step17.png" alt="" /></p>
<p>In this example, I have drawn a box around the "Ship To" details.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step18.png" alt="" /></p>
<p>You can draw a line in the report using Line from the Menu Insert &gt;&gt; Line.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step19.png" alt="" /></p>
<p>I have drawn the line below in the "Ship To" Box.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step20.png" alt="" /></p>
<p>In the same way, I have drawn Box &amp; Line on other report details.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step21.png" alt="" /></p>
<p>If you want to print one invoice per page (i.e., only one invoice on a single page), then select "Section Expert" &amp; click on the Group Footer, enable the "New Page After" drop-down arrow, and click "OK."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step22.png" alt="" /></p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step23.png" alt="" /></p>
<p>You can view the report by clicking on the "Preview" tab.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step24.png" alt="" /></p>
<p>The actual report will look like the sample below in Preview mode.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step25.png" alt="" /></p>
<p>You can add the RefNumber parameter to the report. So you can see the invoice for a particular Invoice#. You can add the RefNumber parameter in the information to limit the records or view a single invoice.</p>
<p>You can add parameters by right-clicking on "Parameter Fields" &amp; click "New."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step26.png" alt="" /></p>
<p>Insert the parameter name, choose "Static" as a list of values &amp; choose "RefNumber" in the value field and click "OK."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step27.png" alt="" /></p>
<p>Add a parameter to the report by dragging and dropping.</p>
<p>We need to link the RefNumber parameter with the RefNumber value in the report.</p>
<p>For linking, Right-click on "RefNumber" &amp; click "Select Expert...".</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step29.png" alt="" /></p>
<p>In the select expert window, select "is equal to" &amp; "{?RefNumber}" parameter &amp; click "OK."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step30.png" alt="" /></p>
<p>When you run the report, the Crystal Report will prompt for RefNumber, as shown in the sample below. Enter a RefNumber value and click "OK."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step31.png" alt="" /></p>
<p>The report is available for a particular RefNumber.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step32.png" alt="" /></p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CRINVRPT/step34.png" alt="" /></p>
<p>Please <a href="https://support.flexquarters.com/esupport/newimages/CRINVRPT/InvoiceReport.zip">click here</a>&nbsp;to download the Sample Report.</p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Sample VB.NET Web Application for Inserting InvoiceLine into existing Invoice]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2924]]></link>
<guid isPermaLink="false"><![CDATA[3953630da28e5181cffca1278517e3cf]]></guid>
<pubDate><![CDATA[Tue, 25 Apr 2017 10:11:20 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[Sample VB.NET Web Application for Inserting InvoiceLine into existing Invoice
 Sample Application:
Please click here for downloading Sample Code.
Please refer below steps for using an application for Inserting InvoiceLine to existing Invoice using VB.N...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">Sample VB.NET Web Application for Inserting InvoiceLine into existing Invoice</span></h2>
<h3><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Sample Application:</span></h3>
<p>Please <a href="//support.flexquarters.com/esupport/newimages/INVCW/QODBC-Invoice-Insert-Sample-Asp.net-VB.zip">click here</a> for downloading Sample Code.</p>
<p>Please refer below steps for using an application for Inserting InvoiceLine to existing Invoice using VB.NET.</p>
<p>Run the application &amp; click on the "Connect" button.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCW/step1.png" alt="" /></p>
<p>The application is connected with QuickBooks.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCW/step2.png" alt="" /></p>
<p>The application has two functionality:</p>
<p>1. Append the existing Invoice with a new Description Line which will add a new Description Line to the existing Invoice.</p>
<p>You need to insert the RefNumber (i.e., Invoice#) of the existing Invoice &amp; description which you want to enter and click on the "Insert New Invoice Line (Description Only)" button.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCW/step3.png" alt="" /></p>
<p>New Description Line is added to the existing Invoice.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCW/step4.png" alt="" /></p>
<p>Result in QuickBooks.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCW/step5.png" alt="" /></p>
<p>2. Append the existing Invoice with a new ItemInventory/ItemService Line, adding a new ItemInventory/ItemService Line to the existing Invoice.</p>
<p>You need to insert the RefNumber (i.e., Invoice#) of the existing Invoice, the Item Full Name, Quantity, Rate &amp; Description which you want to enter and click on the "Insert New Invoice Line (Inventory/Service)" button.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCW/step6.png" alt="" /></p>
<p>New Item Line is added to the existing Invoice.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCW/step7.png" alt="" /></p>
<p>Result in QuickBooks.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCW/step8.png" alt="" /></p>
<h3><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Application Source Code:</span></h3>
<div style="background: #ffffff; overflow: auto; width: auto; border: solid gray; border-width: .1em .1em .1em .8em; padding: .2em .6em;">
<pre style="margin: 0; line-height: 125%;"><span style="color: #008800; font-weight: bold;">Imports</span> <span style="color: #0e84b5; font-weight: bold;">System.Data.Odbc</span>
<span style="color: #008800; font-weight: bold;">Imports</span> <span style="color: #0e84b5; font-weight: bold;">System.Drawing</span>

<span style="color: #008800; font-weight: bold;">Public</span> <span style="color: #008800; font-weight: bold;">Class</span> <span style="color: #bb0066; font-weight: bold;">_Default</span>
    <span style="color: #008800; font-weight: bold;">Inherits</span> Page
     <span style="color: #008800; font-weight: bold;">Private</span> <span style="color: #008800; font-weight: bold;">Shared</span> _cn <span style="color: #000000; font-weight: bold;">As</span> OdbcConnection

    <span style="color: #008800; font-weight: bold;">Protected</span> <span style="color: #008800; font-weight: bold;">Sub</span> <span style="color: #0066bb; font-weight: bold;">Page_Load</span>(<span style="color: #008800; font-weight: bold;">ByVal</span> sender <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">Object</span>, <span style="color: #008800; font-weight: bold;">ByVal</span> e <span style="color: #000000; font-weight: bold;">As</span> EventArgs) <span style="color: #008800; font-weight: bold;">Handles</span> <span style="color: #008800; font-weight: bold;">Me</span>.Load
        lblErrorMessage.Visible <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">False</span>
    <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Sub</span>
    <span style="color: #008800; font-weight: bold;">Protected</span> <span style="color: #008800; font-weight: bold;">Sub</span> <span style="color: #0066bb; font-weight: bold;">btnConnect_Click</span>(<span style="color: #008800; font-weight: bold;">ByVal</span> sender <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">Object</span>, <span style="color: #008800; font-weight: bold;">ByVal</span> e <span style="color: #000000; font-weight: bold;">As</span> EventArgs)
        <span style="color: #008800; font-weight: bold;">Try</span>
            <span style="color: #008800; font-weight: bold;">If</span> (btnConnect.Text.Equals(<span style="background-color: #fff0f0;">"Disconnect"</span>)) <span style="color: #008800; font-weight: bold;">Then</span>
                <span style="color: #008800; font-weight: bold;">If</span> (_cn <span style="color: #000000; font-weight: bold;">IsNot</span> <span style="color: #008800; font-weight: bold;">Nothing</span>) <span style="color: #008800; font-weight: bold;">Then</span>
                    lblConnectionStatus.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"Disconnecting...."</span>
                    _cn.Close()
                    _cn.Dispose()
                    btnConnect.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"Connect"</span>
                    lblConnectionStatus.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"Not Connected"</span>
                    lblConnectionStatus.ForeColor <span style="color: #333333;">=</span> Color.DarkRed
                <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
            <span style="color: #008800; font-weight: bold;">Else</span>
                <span style="color: #008800; font-weight: bold;">If</span> (_cn <span style="color: #000000; font-weight: bold;">Is</span> <span style="color: #008800; font-weight: bold;">Nothing</span> <span style="color: #000000; font-weight: bold;">OrElse</span> _cn.State <span style="color: #333333;">=</span> ConnectionState.Closed) <span style="color: #008800; font-weight: bold;">Then</span>
                    lblConnectionStatus.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"Connecting...."</span>
                    _cn <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">New</span> OdbcConnection(<span style="color: #333399; font-weight: bold;">String</span>.Format(<span style="background-color: #fff0f0;">"DSN={0}"</span>, cboListOfDSN.Text))
                    _cn.ConnectionTimeout <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">60</span>
                    _cn.Open()
                    btnConnect.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"Disconnect"</span>
                    lblConnectionStatus.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"Connected"</span>
                    lblConnectionStatus.ForeColor <span style="color: #333333;">=</span> Color.Green
                <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
            <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
        <span style="color: #008800; font-weight: bold;">Catch</span> ex <span style="color: #000000; font-weight: bold;">As</span> Exception
            btnConnect.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"Errorred"</span>
            lblErrorMessage.Text <span style="color: #333333;">=</span> <span style="color: #333399; font-weight: bold;">String</span>.Format(<span style="background-color: #fff0f0;">"Error - {0}, Stack Trace {1}"</span>, ex.Message, ex.StackTrace)
            lblErrorMessage.Visible <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">True</span>
        <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Try</span>
        
    <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Sub</span>

    <span style="color: #008800; font-weight: bold;">Protected</span> <span style="color: #008800; font-weight: bold;">Sub</span> <span style="color: #0066bb; font-weight: bold;">btnInsertInvoiceDescription_Click</span>(<span style="color: #008800; font-weight: bold;">ByVal</span> sender <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">Object</span>, <span style="color: #008800; font-weight: bold;">ByVal</span> e <span style="color: #000000; font-weight: bold;">As</span> EventArgs)

        <span style="color: #008800; font-weight: bold;">If</span> (_cn <span style="color: #000000; font-weight: bold;">Is</span> <span style="color: #008800; font-weight: bold;">Nothing</span> <span style="color: #000000; font-weight: bold;">OrElse</span> _cn.State <span style="color: #333333;">=</span> ConnectionState.Closed) <span style="color: #008800; font-weight: bold;">Then</span>
            btnConnect_Click(<span style="color: #008800; font-weight: bold;">Nothing</span>, <span style="color: #008800; font-weight: bold;">Nothing</span>)
            btnConnect.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"Connect"</span>
            lblConnectionStatus.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"NotConnected"</span>
            lblConnectionStatus.ForeColor <span style="color: #333333;">=</span> Color.DarkRed
        <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
        <span style="color: #008800; font-weight: bold;">If</span> (<span style="color: #333399; font-weight: bold;">String</span>.IsNullOrEmpty(txtDInvoiceNo.Text)) <span style="color: #008800; font-weight: bold;">Then</span>
            lblErrorMessage.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"Invoice Refer Number is required"</span>
            lblErrorMessage.Visible <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">True</span>
            <span style="color: #888888;">'MessageBox.Show("Invoice Refer Number is required")</span>
            <span style="color: #008800; font-weight: bold;">Return</span>
        <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
        <span style="color: #008800; font-weight: bold;">If</span> (<span style="color: #333399; font-weight: bold;">String</span>.IsNullOrEmpty(txtDDescription.Text)) <span style="color: #008800; font-weight: bold;">Then</span>
            lblErrorMessage.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"New Line Description is required"</span>
            lblErrorMessage.Visible <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">True</span>
            <span style="color: #888888;">'MessageBox.Show("New Line Description is required")</span>
            <span style="color: #008800; font-weight: bold;">Return</span>
        <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>

        InsertInvoiceLineDescriptionOnly(txtDInvoiceNo.Text, txtDDescription.Text)
        DisplayInvoiceInGrid(txtDInvoiceNo.Text)
    <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Sub</span>

    <span style="color: #008800; font-weight: bold;">Protected</span> <span style="color: #008800; font-weight: bold;">Sub</span> <span style="color: #0066bb; font-weight: bold;">btnInvoiceInsertItem_Click</span>(<span style="color: #008800; font-weight: bold;">ByVal</span> sender <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">Object</span>, <span style="color: #008800; font-weight: bold;">ByVal</span> e <span style="color: #000000; font-weight: bold;">As</span> EventArgs)
        <span style="color: #008800; font-weight: bold;">Try</span>

            <span style="color: #008800; font-weight: bold;">If</span> (_cn <span style="color: #000000; font-weight: bold;">Is</span> <span style="color: #008800; font-weight: bold;">Nothing</span> <span style="color: #000000; font-weight: bold;">OrElse</span> _cn.State <span style="color: #333333;">=</span> ConnectionState.Closed) <span style="color: #008800; font-weight: bold;">Then</span>
                btnConnect_Click(<span style="color: #008800; font-weight: bold;">Nothing</span>, <span style="color: #008800; font-weight: bold;">Nothing</span>)
                btnConnect.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"Connect"</span>
                lblConnectionStatus.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"NotConnected"</span>
                lblConnectionStatus.ForeColor <span style="color: #333333;">=</span> Color.DarkRed
            <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
            <span style="color: #008800; font-weight: bold;">If</span> (<span style="color: #333399; font-weight: bold;">String</span>.IsNullOrEmpty(txtIInvoiceNo.Text)) <span style="color: #008800; font-weight: bold;">Then</span>
                <span style="color: #888888;">'MessageBox.Show("Invoice Refer Number is required")</span>
                lblErrorMessage.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"Invoice Refer Number is required"</span>
                lblErrorMessage.Visible <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">True</span>
                <span style="color: #008800; font-weight: bold;">Return</span>
            <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
            <span style="color: #008800; font-weight: bold;">If</span> (<span style="color: #333399; font-weight: bold;">String</span>.IsNullOrEmpty(txtIItemFullName.Text)) <span style="color: #008800; font-weight: bold;">Then</span>

                <span style="color: #888888;">'MessageBox.Show("New Line Item Full Name is required")</span>
                lblErrorMessage.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"New Line Item Full Name is required"</span>
                lblErrorMessage.Visible <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">True</span>
                <span style="color: #008800; font-weight: bold;">Return</span>
            <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>

            <span style="color: #008800; font-weight: bold;">If</span> (<span style="color: #333399; font-weight: bold;">String</span>.IsNullOrEmpty(txtIQuantity.Text)) <span style="color: #008800; font-weight: bold;">Then</span>

                <span style="color: #888888;">'MessageBox.Show("Invoice Refer Quantiy is required")</span>

                lblErrorMessage.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"Invoice Refer Quantiy is required"</span>
                lblErrorMessage.Visible <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">True</span>
                <span style="color: #008800; font-weight: bold;">Return</span>
            <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>

            <span style="color: #008800; font-weight: bold;">If</span> (<span style="color: #333399; font-weight: bold;">String</span>.IsNullOrEmpty(txtIRate.Text)) <span style="color: #008800; font-weight: bold;">Then</span>

                <span style="color: #888888;">'MessageBox.Show("New Line Rate is required")</span>
                lblErrorMessage.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"New Line Rate is required"</span>
                lblErrorMessage.Visible <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">True</span>
                <span style="color: #008800; font-weight: bold;">Return</span>
            <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
            InsertInvoiceLineItem(txtIInvoiceNo.Text, txtIItemFullName.Text, <span style="color: #333399; font-weight: bold;">Integer</span>.Parse(txtIQuantity.Text), <span style="color: #333399; font-weight: bold;">Integer</span>.Parse(txtIRate.Text), txtIDescription.Text)
            DisplayInvoiceInGrid(txtIInvoiceNo.Text)

        <span style="color: #008800; font-weight: bold;">Catch</span> ex <span style="color: #000000; font-weight: bold;">As</span> Exception
            <span style="color: #888888;">'MessageBox.Show(String.Format("Error - {0}, Stack Trace {1}", ex.Message, ex.StackTrace))</span>
            lblErrorMessage.Text <span style="color: #333333;">=</span> <span style="color: #333399; font-weight: bold;">String</span>.Format(<span style="background-color: #fff0f0;">"Error - {0}, Stack Trace {1}"</span>, ex.Message, ex.StackTrace)
            lblErrorMessage.Visible <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">True</span>
        <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Try</span>
    <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Sub</span>
    <span style="color: #008800; font-weight: bold;">Private</span> <span style="color: #008800; font-weight: bold;">Sub</span> <span style="color: #0066bb; font-weight: bold;">InsertInvoiceLineItem</span>(invoiceRefNumber <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>, itemFullName <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>, quanity <span style="color: #000000; font-weight: bold;">As</span> Int16, rate <span style="color: #000000; font-weight: bold;">As</span> Int16, description <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>)
        <span style="color: #008800; font-weight: bold;">Dim</span> QBdrdr <span style="color: #000000; font-weight: bold;">As</span> OdbcDataReader
        <span style="color: #008800; font-weight: bold;">Dim</span> txnID <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>
        <span style="color: #008800; font-weight: bold;">Dim</span> query <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span> <span style="color: #333333;">=</span> <span style="color: #333399; font-weight: bold;">String</span>.Format(<span style="background-color: #fff0f0;">"select txnid from InvoiceLine where RefNumber='{0}'"</span>, invoiceRefNumber)

        <span style="color: #008800; font-weight: bold;">Dim</span> QBEmployeecmd <span style="color: #000000; font-weight: bold;">As</span> OdbcCommand <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">New</span> OdbcCommand(query, _cn)

        QBEmployeecmd.CommandType <span style="color: #333333;">=</span> CommandType.Text

        QBdrdr <span style="color: #333333;">=</span> QBEmployeecmd.ExecuteReader()


        <span style="color: #008800; font-weight: bold;">If</span> (QBdrdr.HasRows <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">True</span>) <span style="color: #008800; font-weight: bold;">Then</span>

            txnID <span style="color: #333333;">=</span> QBdrdr(<span style="background-color: #fff0f0;">"txnid"</span>).ToString()
        <span style="color: #008800; font-weight: bold;">Else</span>
            txnID <span style="color: #333333;">=</span> <span style="color: #333399; font-weight: bold;">String</span>.Empty
        <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
        QBdrdr.Close()


        <span style="color: #008800; font-weight: bold;">If</span> (<span style="color: #333399; font-weight: bold;">String</span>.IsNullOrEmpty(txnID)) <span style="color: #008800; font-weight: bold;">Then</span>
            <span style="color: #888888;">'MessageBox.Show("No Invoice Found")</span>
            lblErrorMessage.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"No Invoice Found"</span>
            lblErrorMessage.Visible <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">True</span>
        <span style="color: #008800; font-weight: bold;">Else</span>
            query <span style="color: #333333;">=</span> <span style="color: #333399; font-weight: bold;">String</span>.Format(<span style="background-color: #fff0f0;">"Insert into invoiceline(txnid,InvoiceLineItemRefFullName, InvoiceLineQuantity, InvoiceLineRate, InvoiceLineDesc) values('{0}','{1}',{2},{3},'{4}') "</span>, txnID, itemFullName, quanity, rate, description)
            <span style="color: #008800; font-weight: bold;">Dim</span> QBEmployeecmd2 <span style="color: #000000; font-weight: bold;">As</span> OdbcCommand <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">New</span> OdbcCommand(query, _cn)

            QBEmployeecmd2.CommandType <span style="color: #333333;">=</span> CommandType.Text
            QBEmployeecmd2.ExecuteNonQuery()

        <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
    <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Sub</span>

    <span style="color: #008800; font-weight: bold;">Private</span> <span style="color: #008800; font-weight: bold;">Sub</span> <span style="color: #0066bb; font-weight: bold;">InsertInvoiceLineDescriptionOnly</span>(invoiceRefNumber <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>, newItemDescription <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>)
        <span style="color: #008800; font-weight: bold;">Dim</span> QBdrdr <span style="color: #000000; font-weight: bold;">As</span> OdbcDataReader
        <span style="color: #008800; font-weight: bold;">Dim</span> txnID <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>
        <span style="color: #008800; font-weight: bold;">Dim</span> query <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>
        query <span style="color: #333333;">=</span> <span style="color: #333399; font-weight: bold;">String</span>.Format(<span style="background-color: #fff0f0;">"select txnid from InvoiceLine where RefNumber='{0}'"</span>, invoiceRefNumber)

        <span style="color: #008800; font-weight: bold;">Dim</span> QBEmployeecmd <span style="color: #000000; font-weight: bold;">As</span> OdbcCommand <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">New</span> OdbcCommand(query, _cn)

        QBEmployeecmd.CommandType <span style="color: #333333;">=</span> CommandType.Text

        QBdrdr <span style="color: #333333;">=</span> QBEmployeecmd.ExecuteReader()


        <span style="color: #008800; font-weight: bold;">If</span> (QBdrdr.HasRows <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">True</span>) <span style="color: #008800; font-weight: bold;">Then</span>
            txnID <span style="color: #333333;">=</span> QBdrdr(<span style="background-color: #fff0f0;">"txnid"</span>).ToString()
        <span style="color: #008800; font-weight: bold;">Else</span>
            txnID <span style="color: #333333;">=</span> <span style="color: #333399; font-weight: bold;">String</span>.Empty

        <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
        QBdrdr.Close()

        <span style="color: #008800; font-weight: bold;">If</span> (<span style="color: #333399; font-weight: bold;">String</span>.IsNullOrEmpty(txnID)) <span style="color: #008800; font-weight: bold;">Then</span>
            <span style="color: #888888;">'MessageBox.Show("No Invoice Found")</span>
            lblErrorMessage.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"No Invoice Found"</span>
            lblErrorMessage.Visible <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">True</span>
        <span style="color: #008800; font-weight: bold;">Else</span>
            query <span style="color: #333333;">=</span> <span style="color: #333399; font-weight: bold;">String</span>.Format(<span style="background-color: #fff0f0;">"Insert into invoiceline(txnid,InvoiceLineDesc) values('{0}','{1}') "</span>, txnID, newItemDescription)
            <span style="color: #008800; font-weight: bold;">Dim</span> QBEmployeecmd2 <span style="color: #000000; font-weight: bold;">As</span> OdbcCommand <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">New</span> OdbcCommand(query, _cn)

            QBEmployeecmd2.CommandType <span style="color: #333333;">=</span> CommandType.Text
            QBEmployeecmd2.ExecuteNonQuery()

        <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
    <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Sub</span>

    <span style="color: #008800; font-weight: bold;">Private</span> <span style="color: #008800; font-weight: bold;">Sub</span> <span style="color: #0066bb; font-weight: bold;">DisplayInvoiceInGrid</span>(invoiceRefNumber <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>)
        <span style="color: #008800; font-weight: bold;">Dim</span> query <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span> <span style="color: #333333;">=</span> <span style="color: #333399; font-weight: bold;">String</span>.Format(<span style="background-color: #fff0f0;">"select RefNumber,CustomerRefFullName,InvoiceLineItemRefFullName, InvoiceLineDesc, InvoiceLineRate, InvoiceLineAmount  from InvoiceLine where RefNumber='{0}'"</span>, invoiceRefNumber)
        ProcessQuery(query)
    <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Sub</span>
    <span style="color: #008800; font-weight: bold;">Private</span> <span style="color: #008800; font-weight: bold;">Sub</span> <span style="color: #0066bb; font-weight: bold;">ProcessQuery</span>(query <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>)
        <span style="color: #008800; font-weight: bold;">Dim</span> cmd <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">New</span> OdbcCommand(query, _cn)
        <span style="color: #008800; font-weight: bold;">Dim</span> reader <span style="color: #000000; font-weight: bold;">As</span> OdbcDataReader <span style="color: #333333;">=</span> cmd.ExecuteReader()
        <span style="color: #008800; font-weight: bold;">Dim</span> myTable <span style="color: #000000; font-weight: bold;">As</span> DataTable <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">New</span> DataTable()
        myTable.Load(reader)
        grvData.AutoGenerateColumns <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">True</span>
        grvData.DataSource <span style="color: #333333;">=</span> myTable
        grvData.DataBind()
    <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Sub</span>


<span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Class</span>
</pre>
</div>
<p>Keywords: sample .net, sample, .net, Dot Net, VB.Net</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Sample VB.NET source code for Inserting InvoiceLine into existing Invoice]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2923]]></link>
<guid isPermaLink="false"><![CDATA[a4666cd9e1ab0e4abf05a0fb232f4ad3]]></guid>
<pubDate><![CDATA[Tue, 25 Apr 2017 10:02:01 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[Sample VB.NET source code for Inserting InvoiceLine into existing Invoice 
 Sample Application:
Please click here&nbsp;to download the Sample Code.
Please refer to the steps below for using an application for inserting InvoiceLine to an existing Invoic...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">Sample VB.NET source code for Inserting InvoiceLine into existing Invoice </span></h2>
<h3><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Sample Application:</span></h3>
<p>Please <a href="http://support.flexquarters.com/esupport/newimages/INVC/QODBC-Invoice-Insert-Sample-VB.zip">click here</a>&nbsp;to download the Sample Code.</p>
<p>Please refer to the steps below for using an application for inserting InvoiceLine to an existing Invoice using VB.NET.</p>
<p>You can change DSN as per your configuration. In this example, I am connecting to the default DSN QuickBooks Data. Run the application, select DSN &amp; click on the "Connect" button.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVC/step1.png" alt="" /></p>
<p>The application is connected with QuickBooks.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVC/step2.png" alt="" /></p>
<p>The application has two functionalities:</p>
<p>1. Append the existing Invoice with a new Description Line, which will add a new Description Line to the existing Invoice.</p>
<p>You need to insert the RefNumber (i.e., Invoice#) of the existing Invoice &amp; description which you want to enter and click on the "Insert New Invoice Line (Description Only)" button.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVC/step3.png" alt="" /></p>
<p>A new Description Line is added to the existing Invoice.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVC/step4.png" alt="" /></p>
<p>Result in QuickBooks.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVC/step5.png" alt="" /></p>
<p>2. Append the existing Invoice with a new ItemInventory/ItemService Line, adding a new ItemInventory/ItemService Line to the existing&nbsp; Invoice.</p>
<p>You need to insert the RefNumber (i.e., Invoice#) of the existing Invoice, the Full Item Name, Quantity, Rate &amp; Description which you want to enter, and click on the "Insert New Invoice Line (Inventory/Service)" button.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVC/step6.png" alt="" /></p>
<p>A new Item Line is added to the existing Invoice.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVC/step7.png" alt="" /></p>
<p>Result in QuickBooks.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVC/step8.png" alt="" /></p>
<h3><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Application Source Code:</span></h3>
<div style="background: #ffffff; overflow: auto; width: auto; border: solid gray; border-width: .1em .1em .1em .8em; padding: .2em .6em;">
<pre style="margin: 0; line-height: 125%;"><span style="color: #008800; font-weight: bold;">Imports</span> <span style="color: #0e84b5; font-weight: bold;">System.Data</span>
<span style="color: #008800; font-weight: bold;">Imports</span> <span style="color: #0e84b5; font-weight: bold;">System.Collections.Generic</span>
<span style="color: #008800; font-weight: bold;">Imports</span> <span style="color: #0e84b5; font-weight: bold;">System.ComponentModel</span>
<span style="color: #008800; font-weight: bold;">Imports</span> <span style="color: #0e84b5; font-weight: bold;">System.Data.Odbc</span>
<span style="color: #008800; font-weight: bold;">Imports</span> <span style="color: #0e84b5; font-weight: bold;">System.Drawing</span>
<span style="color: #008800; font-weight: bold;">Imports</span> <span style="color: #0e84b5; font-weight: bold;">System.Linq</span>
<span style="color: #008800; font-weight: bold;">Imports</span> <span style="color: #0e84b5; font-weight: bold;">System.Text</span>
<span style="color: #008800; font-weight: bold;">Imports</span> <span style="color: #0e84b5; font-weight: bold;">System.Threading.Tasks</span>
<span style="color: #008800; font-weight: bold;">Imports</span> <span style="color: #0e84b5; font-weight: bold;">System.Windows.Forms</span>
<span style="color: #008800; font-weight: bold;">Imports</span> <span style="color: #0e84b5; font-weight: bold;">System.Windows.Forms.VisualStyles</span>

<span style="color: #008800; font-weight: bold;">Public</span> <span style="color: #008800; font-weight: bold;">Class</span> <span style="color: #bb0066; font-weight: bold;">Form1</span>

    <span style="color: #008800; font-weight: bold;">Dim</span> _cn <span style="color: #000000; font-weight: bold;">As</span> OdbcConnection
    <span style="color: #008800; font-weight: bold;">Private</span> <span style="color: #008800; font-weight: bold;">Sub</span> <span style="color: #0066bb; font-weight: bold;">btnConnect_Click</span>(sender <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">Object</span>, e <span style="color: #000000; font-weight: bold;">As</span> EventArgs) <span style="color: #008800; font-weight: bold;">Handles</span> btnConnect.Click
        <span style="color: #008800; font-weight: bold;">Try</span>
            Application.DoEvents()
            <span style="color: #008800; font-weight: bold;">If</span> (btnConnect.Text.Equals(<span style="background-color: #fff0f0;">"Disconnect"</span>)) <span style="color: #008800; font-weight: bold;">Then</span>
                <span style="color: #008800; font-weight: bold;">If</span> (_cn <span style="color: #000000; font-weight: bold;">IsNot</span> <span style="color: #008800; font-weight: bold;">Nothing</span> <span style="color: #000000; font-weight: bold;">OrElse</span> IsDBNull(_cn)) <span style="color: #008800; font-weight: bold;">Then</span>
                    lblConnectionStatus.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"Disconnecting...."</span>
                    _cn.Close()
                    _cn.Dispose()
                    btnConnect.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"Connect"</span>
                    lblConnectionStatus.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"Not Connected"</span>
                    lblConnectionStatus.ForeColor <span style="color: #333333;">=</span> Color.DarkRed
                <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
            <span style="color: #008800; font-weight: bold;">Else</span>
                <span style="color: #008800; font-weight: bold;">If</span> (_cn <span style="color: #000000; font-weight: bold;">Is</span> <span style="color: #008800; font-weight: bold;">Nothing</span> <span style="color: #000000; font-weight: bold;">OrElse</span> _cn.State <span style="color: #333333;">=</span> ConnectionState.Closed) <span style="color: #008800; font-weight: bold;">Then</span>
                    lblConnectionStatus.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"Connecting...."</span>
                    _cn <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">New</span> OdbcConnection(<span style="color: #333399; font-weight: bold;">String</span>.Format(<span style="background-color: #fff0f0;">"DSN={0}"</span>, cboListOfDSN.Text))
                    _cn.ConnectionTimeout <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">60</span>
                    _cn.Open()
                    btnConnect.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"Disconnect"</span>
                    lblConnectionStatus.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"Connected"</span>
                    lblConnectionStatus.ForeColor <span style="color: #333333;">=</span> Color.Green
                <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
            <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
            Application.DoEvents()
        <span style="color: #008800; font-weight: bold;">Catch</span> ex <span style="color: #000000; font-weight: bold;">As</span> Exception
            Application.DoEvents()
            btnConnect.Text <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"Errorred"</span>
            MessageBox.Show(<span style="color: #333399; font-weight: bold;">String</span>.Format(<span style="background-color: #fff0f0;">"Error - {0}, Stack Trace {1}"</span>, ex.Message, ex.StackTrace))
        <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Try</span>
    <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Sub</span>

    <span style="color: #008800; font-weight: bold;">Private</span> <span style="color: #008800; font-weight: bold;">Sub</span> <span style="color: #0066bb; font-weight: bold;">button1_Click</span>(sender <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">Object</span>, e <span style="color: #000000; font-weight: bold;">As</span> EventArgs) <span style="color: #008800; font-weight: bold;">Handles</span> button1.Click
        <span style="color: #008800; font-weight: bold;">Me</span>.Close()
    <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Sub</span>

    <span style="color: #008800; font-weight: bold;">Private</span> <span style="color: #008800; font-weight: bold;">Sub</span> <span style="color: #0066bb; font-weight: bold;">Form1_Load</span>(sender <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">Object</span>, e <span style="color: #000000; font-weight: bold;">As</span> EventArgs) <span style="color: #008800; font-weight: bold;">Handles</span> <span style="color: #008800; font-weight: bold;">MyBase</span>.Load
        ListOutDSN()
    <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Sub</span>

    <span style="color: #008800; font-weight: bold;">Private</span> <span style="color: #008800; font-weight: bold;">Sub</span> <span style="color: #0066bb; font-weight: bold;">ListOutDSN</span>()

        cboListOfDSN.Items.Clear()
        <span style="color: #008800; font-weight: bold;">Dim</span> myOdbcKeys <span style="color: #333333;">=</span> Microsoft.Win32.Registry.LocalMachine.OpenSubKey(<span style="background-color: #fff0f0;">"SOFTWARE\\ODBC\\ODBC.INI\\ODBC Data Sources"</span>, <span style="color: #008800; font-weight: bold;">False</span>).GetValueNames()

        <span style="color: #008800; font-weight: bold;">For</span> <span style="color: #008800; font-weight: bold;">Each</span> item <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">Object</span> <span style="color: #000000; font-weight: bold;">In</span> myOdbcKeys
            cboListOfDSN.Items.Add(item)
        <span style="color: #008800; font-weight: bold;">Next</span>

        myOdbcKeys <span style="color: #333333;">=</span> Microsoft.Win32.Registry.CurrentUser.OpenSubKey(<span style="background-color: #fff0f0;">"SOFTWARE\\ODBC\\ODBC.INI\\ODBC Data Sources"</span>, <span style="color: #008800; font-weight: bold;">False</span>).GetValueNames()

        <span style="color: #008800; font-weight: bold;">For</span> <span style="color: #008800; font-weight: bold;">Each</span> item <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">Object</span> <span style="color: #000000; font-weight: bold;">In</span> myOdbcKeys
            cboListOfDSN.Items.Add(item)
        <span style="color: #008800; font-weight: bold;">Next</span>


        <span style="color: #008800; font-weight: bold;">If</span> (cboListOfDSN.Items.Count <span style="color: #333333;">&gt;</span> <span style="color: #0000dd; font-weight: bold;">0</span>) <span style="color: #008800; font-weight: bold;">Then</span>
            <span style="color: #008800; font-weight: bold;">For</span> <span style="color: #008800; font-weight: bold;">Each</span> item <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span> <span style="color: #000000; font-weight: bold;">In</span> cboListOfDSN.Items
                <span style="color: #008800; font-weight: bold;">If</span> (item.Equals(<span style="background-color: #fff0f0;">"QuickBooks Data"</span>)) <span style="color: #008800; font-weight: bold;">Then</span>
                    cboListOfDSN.Text <span style="color: #333333;">=</span> item
                    <span style="color: #008800; font-weight: bold;">Return</span>
                <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
                <span style="color: #008800; font-weight: bold;">If</span> (item.Equals(<span style="background-color: #fff0f0;">"QuickBooks Data POS"</span>)) <span style="color: #008800; font-weight: bold;">Then</span>
                    cboListOfDSN.Text <span style="color: #333333;">=</span> item
                    <span style="color: #008800; font-weight: bold;">Return</span>
                <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
                <span style="color: #008800; font-weight: bold;">If</span> (item.Equals(<span style="background-color: #fff0f0;">"QuickBooks Data Online"</span>)) <span style="color: #008800; font-weight: bold;">Then</span>
                    cboListOfDSN.Text <span style="color: #333333;">=</span> item
                    <span style="color: #008800; font-weight: bold;">Return</span>
                <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
                cboListOfDSN.SelectedIndex <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">0</span>
            <span style="color: #008800; font-weight: bold;">Next</span>
        <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
    <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Sub</span>



    <span style="color: #008800; font-weight: bold;">Private</span> <span style="color: #008800; font-weight: bold;">Sub</span> <span style="color: #0066bb; font-weight: bold;">btnInsertInvoiceDescription_Click</span>(sender <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">Object</span>, e <span style="color: #000000; font-weight: bold;">As</span> EventArgs) <span style="color: #008800; font-weight: bold;">Handles</span> btnInsertInvoiceDescription.Click
        <span style="color: #888888;">'If (IsNothing(_cn) Or _cn.State = ConnectionState.Closed) Then</span>
        <span style="color: #888888;">'btnConnect_Click(Nothing, Nothing)</span>
        <span style="color: #888888;">'End If</span>
        <span style="color: #008800; font-weight: bold;">If</span> (_cn <span style="color: #000000; font-weight: bold;">Is</span> <span style="color: #008800; font-weight: bold;">Nothing</span> <span style="color: #000000; font-weight: bold;">OrElse</span> _cn.State <span style="color: #333333;">=</span> ConnectionState.Closed) <span style="color: #008800; font-weight: bold;">Then</span>
            btnConnect_Click(<span style="color: #008800; font-weight: bold;">Nothing</span>, <span style="color: #008800; font-weight: bold;">Nothing</span>)
        <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
        <span style="color: #008800; font-weight: bold;">If</span> (<span style="color: #333399; font-weight: bold;">String</span>.IsNullOrEmpty(txtDInvoiceNo.Text)) <span style="color: #008800; font-weight: bold;">Then</span>
            MessageBox.Show(<span style="background-color: #fff0f0;">"Invoice Refer Number is required"</span>)
            <span style="color: #008800; font-weight: bold;">Return</span>
        <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
        <span style="color: #008800; font-weight: bold;">If</span> (<span style="color: #333399; font-weight: bold;">String</span>.IsNullOrEmpty(txtDDescription.Text)) <span style="color: #008800; font-weight: bold;">Then</span>
            MessageBox.Show(<span style="background-color: #fff0f0;">"New Line Description is required"</span>)
            <span style="color: #008800; font-weight: bold;">Return</span>
        <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>

        InsertInvoiceLineDescriptionOnly(txtDInvoiceNo.Text, txtDDescription.Text)
        DisplayInvoiceInGrid(txtDInvoiceNo.Text)

    <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Sub</span>

    <span style="color: #008800; font-weight: bold;">Private</span> <span style="color: #008800; font-weight: bold;">Sub</span> <span style="color: #0066bb; font-weight: bold;">InsertInvoiceLineDescriptionOnly</span>(invoiceRefNumber <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>, newItemDescription <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>)
        <span style="color: #008800; font-weight: bold;">Dim</span> QBdrdr <span style="color: #000000; font-weight: bold;">As</span> OdbcDataReader
        <span style="color: #008800; font-weight: bold;">Dim</span> txnID <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>
        <span style="color: #008800; font-weight: bold;">Dim</span> query <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>
        query <span style="color: #333333;">=</span> <span style="color: #333399; font-weight: bold;">String</span>.Format(<span style="background-color: #fff0f0;">"select txnid from InvoiceLine where RefNumber='{0}'"</span>, invoiceRefNumber)

        <span style="color: #008800; font-weight: bold;">Dim</span> QBEmployeecmd <span style="color: #000000; font-weight: bold;">As</span> OdbcCommand <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">New</span> OdbcCommand(query, _cn)

        QBEmployeecmd.CommandType <span style="color: #333333;">=</span> CommandType.Text

        QBdrdr <span style="color: #333333;">=</span> QBEmployeecmd.ExecuteReader()


        <span style="color: #008800; font-weight: bold;">If</span> (QBdrdr.HasRows <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">True</span>) <span style="color: #008800; font-weight: bold;">Then</span>
            txnID <span style="color: #333333;">=</span> QBdrdr(<span style="background-color: #fff0f0;">"txnid"</span>).ToString()
        <span style="color: #008800; font-weight: bold;">Else</span>
            txnID <span style="color: #333333;">=</span> <span style="color: #333399; font-weight: bold;">String</span>.Empty

        <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
        QBdrdr.Close()

        <span style="color: #008800; font-weight: bold;">If</span> (<span style="color: #333399; font-weight: bold;">String</span>.IsNullOrEmpty(txnID)) <span style="color: #008800; font-weight: bold;">Then</span>
            MessageBox.Show(<span style="background-color: #fff0f0;">"No Invoice Found"</span>)
        <span style="color: #008800; font-weight: bold;">Else</span>
            query <span style="color: #333333;">=</span> <span style="color: #333399; font-weight: bold;">String</span>.Format(<span style="background-color: #fff0f0;">"Insert into invoiceline(txnid,InvoiceLineDesc) values('{0}','{1}') "</span>, txnID, newItemDescription)
            <span style="color: #008800; font-weight: bold;">Dim</span> QBEmployeecmd2 <span style="color: #000000; font-weight: bold;">As</span> OdbcCommand <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">New</span> OdbcCommand(query, _cn)

            QBEmployeecmd2.CommandType <span style="color: #333333;">=</span> CommandType.Text
            QBEmployeecmd2.ExecuteNonQuery()

        <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
    <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Sub</span>

    <span style="color: #008800; font-weight: bold;">Private</span> <span style="color: #008800; font-weight: bold;">Sub</span> <span style="color: #0066bb; font-weight: bold;">DisplayInvoiceInGrid</span>(invoiceRefNumber <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>)
        <span style="color: #008800; font-weight: bold;">Dim</span> query <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span> <span style="color: #333333;">=</span> <span style="color: #333399; font-weight: bold;">String</span>.Format(<span style="background-color: #fff0f0;">"select RefNumber,CustomerRefFullName,InvoiceLineItemRefFullName, InvoiceLineDesc, InvoiceLineRate, InvoiceLineAmount  from InvoiceLine where RefNumber='{0}'"</span>, invoiceRefNumber)
        ProcessQuery(query)
    <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Sub</span>

    <span style="color: #008800; font-weight: bold;">Private</span> <span style="color: #008800; font-weight: bold;">Sub</span> <span style="color: #0066bb; font-weight: bold;">ProcessQuery</span>(query <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>)
        <span style="color: #008800; font-weight: bold;">Dim</span> cmd <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">New</span> OdbcCommand(query, _cn)
        <span style="color: #008800; font-weight: bold;">Dim</span> reader <span style="color: #000000; font-weight: bold;">As</span> OdbcDataReader <span style="color: #333333;">=</span> cmd.ExecuteReader()
        <span style="color: #008800; font-weight: bold;">Dim</span> myTable <span style="color: #000000; font-weight: bold;">As</span> DataTable <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">New</span> DataTable()
        myTable.Load(reader)
        grvData.AutoGenerateColumns <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">True</span>
        grvData.DataSource <span style="color: #333333;">=</span> myTable
    <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Sub</span>


    <span style="color: #008800; font-weight: bold;">Private</span> <span style="color: #008800; font-weight: bold;">Sub</span> <span style="color: #0066bb; font-weight: bold;">btnInvoiceInsertItem_Click</span>(sender <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">Object</span>, e <span style="color: #000000; font-weight: bold;">As</span> EventArgs) <span style="color: #008800; font-weight: bold;">Handles</span> btnInvoiceInsertItem.Click

        <span style="color: #008800; font-weight: bold;">Try</span>

            <span style="color: #008800; font-weight: bold;">If</span> (_cn <span style="color: #000000; font-weight: bold;">Is</span> <span style="color: #008800; font-weight: bold;">Nothing</span> <span style="color: #000000; font-weight: bold;">OrElse</span> _cn.State <span style="color: #333333;">=</span> ConnectionState.Closed) <span style="color: #008800; font-weight: bold;">Then</span>
                btnConnect_Click(<span style="color: #008800; font-weight: bold;">Nothing</span>, <span style="color: #008800; font-weight: bold;">Nothing</span>)
            <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
            <span style="color: #008800; font-weight: bold;">If</span> (<span style="color: #333399; font-weight: bold;">String</span>.IsNullOrEmpty(txtIInvoiceNo.Text)) <span style="color: #008800; font-weight: bold;">Then</span>
                MessageBox.Show(<span style="background-color: #fff0f0;">"Invoice Refer Number is required"</span>)
                <span style="color: #008800; font-weight: bold;">Return</span>
            <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
            <span style="color: #008800; font-weight: bold;">If</span> (<span style="color: #333399; font-weight: bold;">String</span>.IsNullOrEmpty(txtIItemFullName.Text)) <span style="color: #008800; font-weight: bold;">Then</span>

                MessageBox.Show(<span style="background-color: #fff0f0;">"New Line Item Full Name is required"</span>)
                <span style="color: #008800; font-weight: bold;">Return</span>
            <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>

            <span style="color: #008800; font-weight: bold;">If</span> (<span style="color: #333399; font-weight: bold;">String</span>.IsNullOrEmpty(txtIQuantity.Text)) <span style="color: #008800; font-weight: bold;">Then</span>

                MessageBox.Show(<span style="background-color: #fff0f0;">"Invoice Refer Quantiy is required"</span>)
                <span style="color: #008800; font-weight: bold;">Return</span>
            <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>

            <span style="color: #008800; font-weight: bold;">If</span> (<span style="color: #333399; font-weight: bold;">String</span>.IsNullOrEmpty(txtIRate.Text)) <span style="color: #008800; font-weight: bold;">Then</span>

                MessageBox.Show(<span style="background-color: #fff0f0;">"New Line Rate is required"</span>)
                <span style="color: #008800; font-weight: bold;">Return</span>
            <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
            InsertInvoiceLineItem(txtIInvoiceNo.Text, txtIItemFullName.Text, <span style="color: #333399; font-weight: bold;">Integer</span>.Parse(txtIQuantity.Text), <span style="color: #333399; font-weight: bold;">Integer</span>.Parse(txtIRate.Text), txtIDescription.Text)
            DisplayInvoiceInGrid(txtIInvoiceNo.Text)

        <span style="color: #008800; font-weight: bold;">Catch</span> ex <span style="color: #000000; font-weight: bold;">As</span> Exception
            MessageBox.Show(<span style="color: #333399; font-weight: bold;">String</span>.Format(<span style="background-color: #fff0f0;">"Error - {0}, Stack Trace {1}"</span>, ex.Message, ex.StackTrace))
        <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Try</span>

    <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Sub</span>

    <span style="color: #008800; font-weight: bold;">Private</span> <span style="color: #008800; font-weight: bold;">Sub</span> <span style="color: #0066bb; font-weight: bold;">InsertInvoiceLineItem</span>(invoiceRefNumber <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>, itemFullName <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>, quanity <span style="color: #000000; font-weight: bold;">As</span> Int16, rate <span style="color: #000000; font-weight: bold;">As</span> Int16, description <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>)
        <span style="color: #008800; font-weight: bold;">Dim</span> QBdrdr <span style="color: #000000; font-weight: bold;">As</span> OdbcDataReader
        <span style="color: #008800; font-weight: bold;">Dim</span> txnID <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span>
        <span style="color: #008800; font-weight: bold;">Dim</span> query <span style="color: #000000; font-weight: bold;">As</span> <span style="color: #333399; font-weight: bold;">String</span> <span style="color: #333333;">=</span> <span style="color: #333399; font-weight: bold;">String</span>.Format(<span style="background-color: #fff0f0;">"select txnid from InvoiceLine where RefNumber='{0}'"</span>, invoiceRefNumber)

        <span style="color: #008800; font-weight: bold;">Dim</span> QBEmployeecmd <span style="color: #000000; font-weight: bold;">As</span> OdbcCommand <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">New</span> OdbcCommand(query, _cn)

        QBEmployeecmd.CommandType <span style="color: #333333;">=</span> CommandType.Text

        QBdrdr <span style="color: #333333;">=</span> QBEmployeecmd.ExecuteReader()


        <span style="color: #008800; font-weight: bold;">If</span> (QBdrdr.HasRows <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">True</span>) <span style="color: #008800; font-weight: bold;">Then</span>

            txnID <span style="color: #333333;">=</span> QBdrdr(<span style="background-color: #fff0f0;">"txnid"</span>).ToString()
        <span style="color: #008800; font-weight: bold;">Else</span>
            txnID <span style="color: #333333;">=</span> <span style="color: #333399; font-weight: bold;">String</span>.Empty
        <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
        QBdrdr.Close()


        <span style="color: #008800; font-weight: bold;">If</span> (<span style="color: #333399; font-weight: bold;">String</span>.IsNullOrEmpty(txnID)) <span style="color: #008800; font-weight: bold;">Then</span>
            MessageBox.Show(<span style="background-color: #fff0f0;">"No Invoice Found"</span>)
        <span style="color: #008800; font-weight: bold;">Else</span>
            query <span style="color: #333333;">=</span> <span style="color: #333399; font-weight: bold;">String</span>.Format(<span style="background-color: #fff0f0;">"Insert into invoiceline(txnid,InvoiceLineItemRefFullName, InvoiceLineQuantity, InvoiceLineRate, InvoiceLineDesc) values('{0}','{1}',{2},{3},'{4}') "</span>, txnID, itemFullName, quanity, rate, description)
            <span style="color: #008800; font-weight: bold;">Dim</span> QBEmployeecmd2 <span style="color: #000000; font-weight: bold;">As</span> OdbcCommand <span style="color: #333333;">=</span> <span style="color: #008800; font-weight: bold;">New</span> OdbcCommand(query, _cn)

            QBEmployeecmd2.CommandType <span style="color: #333333;">=</span> CommandType.Text
            QBEmployeecmd2.ExecuteNonQuery()

        <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">If</span>
    <span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Sub</span>

<span style="color: #008800; font-weight: bold;">End</span> <span style="color: #008800; font-weight: bold;">Class</span>
</pre>
</div>
<p>Keywords: sample .net, sample, .net, Dot Net, VB.Net</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - Error 3120 - Object X specified in the request cannot be found.]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2913]]></link>
<guid isPermaLink="false"><![CDATA[b31df16a88ce00fed951f24b46e08649]]></guid>
<pubDate><![CDATA[Wed, 12 Apr 2017 12:53:14 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - Error 3120 - Object X specified in the request cannot be found. 
Problem Description:
I could link all tables to an MS Access DB from the QuickBooks Database. 
But I got the following error when I tried to open the ItemAssembliesCanB...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - Error 3120 - Object X specified in the request cannot be found. </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;">I could link all tables to an MS Access DB from the QuickBooks Database. </span></p>
<p>But I got the following error when I tried to open the ItemAssembliesCanBuild table.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/OBJX/step1.png" alt="" /></p>
<p>ERROR [00000] [QODBC] Error: 3120 - Object "X" specified in the request cannot be found.</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;">ItemAssembliesCanBuild Query does require ItemInventoryAssemblyRef(ListID or FullName) and TxnDate in the WHERE Clause to perform the query in QuickBooks SDK. </span></p>
<p>You will get this error when you execute a query directly without specifying ItemInventoryAssemblyRef(ListID or FullName) and TxnDate.</p>
<p>So it would be best to execute the query with ItemInventoryAssemblyRef(ListID or FullName) and TxnDate through a custom query.</p>
<p>For Example:<br />SELECT * FROM ItemAssembliesCanBuild where ItemInventoryAssemblyRefFullName='Inventory Door Kit' and TxnDate={d'2017-12-15'}</p>
<p>It would be best if you wrote the query in MS Access from MS Access &gt;&gt; create tab &gt;&gt; Query Design.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/OBJX/step2.png" alt="" /></p>
<p>Select Pass-Through &gt;&gt; Write query &gt;&gt; Execute the query using the Run button.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/OBJX/step3.png" alt="" /></p>
<p>Select DSN &amp; execute the query.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/OBJX/step4.png" alt="" /></p>
<p>Query executed successfully &amp; result available.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/OBJX/step5.png" alt="" /></p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-ALL] Troubleshooting - How to change connection string stored in Excel]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2912]]></link>
<guid isPermaLink="false"><![CDATA[c68c9c8258ea7d85472dd6fd0015f047]]></guid>
<pubDate><![CDATA[Fri, 07 Apr 2017 12:33:54 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[Troubleshooting - How to change the connection string stored in Excel
Problem Description:&nbsp;
I have changed the setting in QODBC Setup Screen from Open mode to the same as the company file, but my Excel still does not take the changes and needs the ...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">Troubleshooting - How to change the connection string stored in Excel</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span>&nbsp;</h3>
<p>I have changed the setting in QODBC Setup Screen from Open mode to the same as the company file, but my Excel still does not take the changes and needs the company file to be in multi-user mode.<br /><br />When I refresh the Excel sheet, I get the following error:</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/ExcelCS/step1.png" alt="" /></p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;"> MS Excel is storing the connection string &amp; due to this, you are facing this error. </span></p>
<p>You need to update the connection string in Excel to solve this issue.</p>
<p>Please open the MS Excel file and go to the "Data" tab &gt;&gt; Click on "Connection."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/ExcelCS/step2.png" alt="" /></p>
<p>Now select the connection &amp; click on "Properties."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/ExcelCS/step3.png" alt="" /></p>
<p>Navigate to the Definition tab, &amp; You will find the Connection String box. You will notice that the connection string contains <strong>OpenMode=M,</strong> which will try to open the company file in Multiuser mode.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/ExcelCS/step4.png" alt="" /></p>
<p>You need to change <strong>OpenMode=M</strong>&nbsp;to <strong>OpenMode=F</strong>&nbsp;in the connection string box &amp; click "OK."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/ExcelCS/step5.png" alt="" /></p>
<p>By changing it to <strong>OpenMode=F,</strong>&nbsp;the Excel connection will follow the company file mode, whatever is selected in QuickBooks.</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - How to find item not sold after a certain date and mark it as inactive.]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2900]]></link>
<guid isPermaLink="false"><![CDATA[f9fd2624beefbc7808e4e405d73f57ab]]></guid>
<pubDate><![CDATA[Fri, 24 Mar 2017 11:25:52 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[Troubleshooting - How to find an Item not sold after a specific date and mark it inactive.
Problem Description:
We would wish to inactive items that have not sold after a certain date. Is this possible? If so, any help would be appreciated.
Solution:
...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">Troubleshooting - How to find an Item not sold after a specific date and mark it inactive.</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>We would wish to inactive items that have not sold after a certain date. Is this possible? If so, any help would be appreciated.</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>1) Get the list of Sold Items by exporting the SalesByItemSummary report for a certain period in MS Excel as below</p>
<p>For Example:<br /> sp_report SalesByItemSummary show Text, Label, Quantity, Amount, Percent, AveragePrice parameters DateFrom = {d '2016-06-01'}, DateTo = {d '2016-12-31'}</p>
<p>Please refer to&nbsp;<a href="http://support.flexquarters.com/esupport/index.php?/Default/Knowledgebase/Article/View/2405" target="_blank">How to create sp_reports using Microsoft Excel</a> for exporting reports into Excel.</p>
<p>By running the above query, you will get ItemType + Parent Item Name in the Text column &amp; ItemName + description in the Label column.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/ItemINA/step1.png" alt="" /></p>
<p>We will split ItemName from the description using the "Text to Columns" option. We will select the "Label" column &amp; click on "Text to Columns."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/ItemINA/step2.png" alt="" /></p>
<p>Choose "Delimited" and click "Next."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/ItemINA/step3.png" alt="" /></p>
<p>Select "Other" and write "(" (i.e., Opening Brace) and click "Next." We are splitting data into different columns from Opening Brace.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/ItemINA/step4.png" alt="" /></p>
<p>You can see split data from the Data preview. Now click "finish."</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/ItemINA/step5.png" alt="" /></p>
<p>Click "OK" to replace destination cell contents.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/ItemINA/step6.png" alt="" /></p>
<p>Data is split into two columns.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/ItemINA/step7.png" alt="" /></p>
<p>Now we will add a new column &amp; use the formula for trimming whitespace from the Child Item name &amp; removing the prefix "Total" from the Parent Item name.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/ItemINA/step8.png" alt="" /></p>
<p>=TRIM(SUBSTITUTE(C2,"Total","",1))</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/ItemINA/step9.png" alt="" /></p>
<p>The formula is applied to all rows. Now we have furnished the Item Name.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/ItemINA/step10.png" alt="" /></p>
<p>2) Now we have the Item Name &amp; Item type for sold items. Now we need to export Item tables depending on Item Type (i.e., ItemInventory, ItemNonInventory, ItemService, etc.).</p>
<p>In this example, we will export the ItemInventory table in sheet2 &amp; we will make inactive ItemInventory that is unsold for a certain period.</p>
<p>Please refer to&nbsp;<a href="http://support.flexquarters.com/esupport/index.php?/Default/Knowledgebase/Article/View/2466" target="_blank">Using QuickBooks Data with Excel</a> for exporting the ItemInventory table into Excel.</p>
<p>The ItemInventory table is exported to sheet2.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/ItemINA/step11.png" alt="" /></p>
<p>Now we will go to sheet 3 &amp; use the VLOOKUP formula for getting a list of unsold Items.<br />=IF(IFERROR(VLOOKUP(TRIM(Sheet2!E1), Sheet1!B: B,1, FALSE), "ERROR")=" ERROR," Sheet2!E1,"")</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/ItemINA/step12.png" alt="" /></p>
<p>The formula is applied to all rows. Now we have the name of the unsold ItemInventory.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/ItemINA/step13.png" alt="" /></p>
<p>3) Now, we have the name of the unsold ItemInventory. You can make it inactive by running the following update query.</p>
<p>Update ItemInventory set IsActive = False where Name = 'Cabinet Pulls'</p>
<p>You can also use VBA to make all unsold Items inactive. Please refer to&nbsp;<a href="http://support.flexquarters.com/esupport/index.php?/Default/Knowledgebase/Article/View/2571" target="_blank">Using QuickBooks Data with VBA</a> and write a VBA script per your requirement.</p>
<p>Result in QuickBooks.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/ItemINA/step14.png" alt="" /></p>
<p>You can repeat the above steps for Item Type like ItemNonInventory, ItemService, etc...</p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Sample C#.NET Web Application for Inserting InvoiceLine to existing Invoice]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2894]]></link>
<guid isPermaLink="false"><![CDATA[5b4130c9e891d39891289001cc97d86b]]></guid>
<pubDate><![CDATA[Thu, 02 Mar 2017 14:40:42 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Sample Code for Inserting InvoiceLine to an existing Invoice using C#.NET Web Application 
 Sample Application:
Please click here to download the Sample Code.
Please refer to the steps below for using the application for inserting InvoiceLine to an ex...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Sample Code for Inserting InvoiceLine to an existing Invoice using C#.NET Web Application </span></h2>
<h3><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Sample Application:</span></h3>
<p>Please <a href="http://support.flexquarters.com/esupport/newimages/INVCW/QODBC-Invoice-Insert-Sample-Asp.net.zip">click here</a> to download the Sample Code.</p>
<p>Please refer to the steps below for using the application for inserting InvoiceLine to an existing Invoice using C#.NET.</p>
<p>Run the application &amp; click on the "Connect" button.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCW/step1.png" alt="" /></p>
<p>The application should get connected to QuickBooks.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCW/step2.png" alt="" /></p>
<p>The application has two functionalities:</p>
<p>1. Append the existing Invoice with a new Description Line, adding a new Description Line to the existing Invoice.</p>
<p>You need to insert the RefNumber (i.e., Invoice#) of the existing Invoice &amp; description which you want to enter and click on the "Insert New Invoice Line (Description Only)" button.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCW/step3.png" alt="" /></p>
<p>A new Description Line is added to the existing Invoice.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCW/step4.png" alt="" /></p>
<p>Result in QuickBooks.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCW/step5.png" alt="" /></p>
<p>2. Append the existing Invoice with a new ItemInventory/ItemService Line, adding a new ItemInventory/ItemService Line to the existing Invoice.</p>
<p>You need to insert the RefNumber (i.e., Invoice#) of the existing Invoice, Full Item Name, Quantity, Rate &amp; Description, which you want to enter, and click on the "Insert New Invoice Line (Inventory/Service)" button.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCW/step6.png" alt="" /></p>
<p>A new Item Line is added to the existing Invoice.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCW/step7.png" alt="" /></p>
<p>Result in QuickBooks.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVCW/step8.png" alt="" /></p>
<h3><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Application Source Code:</span></h3>
<div style="background: #ffffff; overflow: auto; width: auto; border: solid gray; border-width: .1em .1em .1em .8em; padding: .2em .6em;">
<pre style="margin: 0; line-height: 125%;"><span style="color: #008800; font-weight: bold;">using</span> <span style="color: #0e84b5; font-weight: bold;">System</span>;
<span style="color: #008800; font-weight: bold;">using</span> <span style="color: #0e84b5; font-weight: bold;">System.Collections.Generic</span>;
<span style="color: #008800; font-weight: bold;">using</span> <span style="color: #0e84b5; font-weight: bold;">System.Data</span>;
<span style="color: #008800; font-weight: bold;">using</span> <span style="color: #0e84b5; font-weight: bold;">System.Data.Odbc</span>;
<span style="color: #008800; font-weight: bold;">using</span> <span style="color: #0e84b5; font-weight: bold;">System.Drawing</span>;
<span style="color: #008800; font-weight: bold;">using</span> <span style="color: #0e84b5; font-weight: bold;">System.Linq</span>;
<span style="color: #008800; font-weight: bold;">using</span> <span style="color: #0e84b5; font-weight: bold;">System.Web</span>;
<span style="color: #008800; font-weight: bold;">using</span> <span style="color: #0e84b5; font-weight: bold;">System.Web.UI</span>;
<span style="color: #008800; font-weight: bold;">using</span> <span style="color: #0e84b5; font-weight: bold;">System.Web.UI.WebControls</span>;

<span style="color: #008800; font-weight: bold;">public</span> <span style="color: #008800; font-weight: bold;">partial</span> <span style="color: #008800; font-weight: bold;">class</span> <span style="color: #bb0066; font-weight: bold;">_Default</span> : Page
{
    <span style="color: #008800; font-weight: bold;">private</span> <span style="color: #008800; font-weight: bold;">static</span> OdbcConnection _cn;
    <span style="color: #008800; font-weight: bold;">protected</span> <span style="color: #008800; font-weight: bold;">void</span> <span style="color: #0066bb; font-weight: bold;">Page_Load</span>(<span style="color: #333399; font-weight: bold;">object</span> sender, EventArgs e)
    {
        <span style="color: #008800; font-weight: bold;">try</span>
        {
            <span style="color: #888888;">//ListOutDSN();</span>
            lblErrorMessage.Visible = <span style="color: #008800; font-weight: bold;">false</span>;
        }
        <span style="color: #008800; font-weight: bold;">catch</span> (Exception)
        {

            <span style="color: #008800; font-weight: bold;">throw</span>;
        }
        <span style="color: #008800; font-weight: bold;">finally</span>
        {

        }
    }
      <span style="color: #008800; font-weight: bold;">protected</span> <span style="color: #008800; font-weight: bold;">void</span> <span style="color: #0066bb; font-weight: bold;">btnConnet_Click</span>(<span style="color: #333399; font-weight: bold;">object</span> sender, EventArgs e)
    {
        <span style="color: #008800; font-weight: bold;">try</span>
        {
            <span style="color: #008800; font-weight: bold;">if</span> (btnConnect.Text == <span style="background-color: #fff0f0;">"Disconnect"</span>)
            {
                <span style="color: #008800; font-weight: bold;">if</span> (_cn != <span style="color: #008800; font-weight: bold;">null</span>)
                {
                    lblConnectionStatus.Text = <span style="background-color: #fff0f0;">"Disconnecting...."</span>;
                    _cn.Close();
                    _cn.Dispose();
                    _cn = <span style="color: #008800; font-weight: bold;">null</span>;
                    btnConnect.Text = <span style="background-color: #fff0f0;">"Connect"</span>;
                    lblConnectionStatus.Text = <span style="background-color: #fff0f0;">"Not Connected"</span>;
                    lblConnectionStatus.ForeColor = Color.DarkRed;
                }
            }
            <span style="color: #008800; font-weight: bold;">else</span>
            {
                <span style="color: #008800; font-weight: bold;">if</span> (_cn == <span style="color: #008800; font-weight: bold;">null</span> || _cn.State == ConnectionState.Closed)
                {
                    lblConnectionStatus.Text = <span style="background-color: #fff0f0;">"Connecting...."</span>;
                    _cn = <span style="color: #008800; font-weight: bold;">new</span> OdbcConnection(<span style="color: #333399; font-weight: bold;">string</span>.Format(<span style="background-color: #fff0f0;">"DSN={0}"</span>, cboListOfDSN.Text));
                    _cn.ConnectionTimeout = <span style="color: #6600ee; font-weight: bold;">60</span>;
                    _cn.Open();
                    btnConnect.Text = <span style="background-color: #fff0f0;">"Disconnect"</span>;
                    lblConnectionStatus.Text = <span style="background-color: #fff0f0;">"Connected"</span>;
                    lblConnectionStatus.ForeColor = Color.Green;
                }

            }

        }
        <span style="color: #008800; font-weight: bold;">catch</span> (Exception ex)
        {
            btnConnect.Text = <span style="background-color: #fff0f0;">"Errorred"</span>;
            lblErrorMessage.Text = <span style="color: #333399; font-weight: bold;">string</span>.Format(<span style="background-color: #fff0f0;">"Error - {0}, Stack Trace {1}"</span>, ex.Message, ex.StackTrace);
            lblErrorMessage.Visible = <span style="color: #008800; font-weight: bold;">true</span>;
            <span style="color: #888888;">//MessageBox.Show(string.Format("Error - {0}, Stack Trace {1}", ex.Message, ex.StackTrace));            </span>
        }
    }
    <span style="color: #008800; font-weight: bold;">protected</span> <span style="color: #008800; font-weight: bold;">void</span> <span style="color: #0066bb; font-weight: bold;">btnInsertInvoiceDescription_Click</span>(<span style="color: #333399; font-weight: bold;">object</span> sender, EventArgs e)
    {
        <span style="color: #008800; font-weight: bold;">try</span>
        {
            <span style="color: #008800; font-weight: bold;">if</span> (_cn == <span style="color: #008800; font-weight: bold;">null</span> || _cn.State == ConnectionState.Closed)
            {
                btnConnet_Click(<span style="color: #008800; font-weight: bold;">null</span>, <span style="color: #008800; font-weight: bold;">null</span>);
                btnConnect.Text = <span style="background-color: #fff0f0;">"Connect"</span>;
                lblConnectionStatus.Text = <span style="background-color: #fff0f0;">"NotConnected"</span>;
                lblConnectionStatus.ForeColor = Color.DarkRed;
            }
            <span style="color: #008800; font-weight: bold;">if</span> (<span style="color: #333399; font-weight: bold;">string</span>.IsNullOrEmpty(txtDInvoiceNo.Text))
            {
                lblErrorMessage.Text = <span style="background-color: #fff0f0;">"Invoice Refer Number is required"</span>;
                lblErrorMessage.Visible = <span style="color: #008800; font-weight: bold;">true</span>;
                <span style="color: #888888;">//MessageBox.Show("Invoice Refer Number is required");</span>
                <span style="color: #008800; font-weight: bold;">return</span>;
            }
            <span style="color: #008800; font-weight: bold;">if</span> (<span style="color: #333399; font-weight: bold;">string</span>.IsNullOrEmpty(txtDDescription.Text))
            {
                lblErrorMessage.Text = <span style="background-color: #fff0f0;">"New Line Description is required"</span>;
                lblErrorMessage.Visible = <span style="color: #008800; font-weight: bold;">true</span>;
                <span style="color: #888888;">//MessageBox.Show("New Line Description is required");</span>
                <span style="color: #008800; font-weight: bold;">return</span>;
            }
            InsertInvoiceLineDescriptionOnly(txtDInvoiceNo.Text, txtDDescription.Text);
            DisplayInvoiceInGrid(txtDInvoiceNo.Text);
        }
        <span style="color: #008800; font-weight: bold;">catch</span> (Exception ex)
        {
            lblErrorMessage.Text = <span style="color: #333399; font-weight: bold;">string</span>.Format(<span style="background-color: #fff0f0;">"Error - {0}, Stack Trace {1}"</span>, ex.Message, ex.StackTrace);
            lblErrorMessage.Visible = <span style="color: #008800; font-weight: bold;">true</span>;
            <span style="color: #888888;">//MessageBox.Show(string.Format("Error - {0}, Stack Trace {1}", ex.Message, ex.StackTrace));</span>
        }
    }
    <span style="color: #008800; font-weight: bold;">protected</span> <span style="color: #008800; font-weight: bold;">void</span> <span style="color: #0066bb; font-weight: bold;">btnInvoiceInsertItem_Click</span>(<span style="color: #333399; font-weight: bold;">object</span> sender, EventArgs e)
    {
        <span style="color: #008800; font-weight: bold;">try</span>
        {
            <span style="color: #008800; font-weight: bold;">if</span> (_cn == <span style="color: #008800; font-weight: bold;">null</span> || _cn.State == ConnectionState.Closed)
            {
                btnConnet_Click(<span style="color: #008800; font-weight: bold;">null</span>, <span style="color: #008800; font-weight: bold;">null</span>);
                btnConnect.Text = <span style="background-color: #fff0f0;">"Connect"</span>;
                lblConnectionStatus.Text = <span style="background-color: #fff0f0;">"NotConnected"</span>;
                lblConnectionStatus.ForeColor = Color.DarkRed;
            }
            <span style="color: #008800; font-weight: bold;">if</span> (<span style="color: #333399; font-weight: bold;">string</span>.IsNullOrEmpty(txtIInvoiceNo.Text))
            {
                lblErrorMessage.Text = <span style="background-color: #fff0f0;">"Invoice Refer Number is required"</span>;
                lblErrorMessage.Visible = <span style="color: #008800; font-weight: bold;">true</span>;
                <span style="color: #888888;">//MessageBox.Show("Invoice Refer Number is required");</span>
                <span style="color: #008800; font-weight: bold;">return</span>;
            }
            <span style="color: #008800; font-weight: bold;">if</span> (<span style="color: #333399; font-weight: bold;">string</span>.IsNullOrEmpty(txtIItemFullName.Text))
            {
                lblErrorMessage.Text = <span style="background-color: #fff0f0;">"New Line Item Full Name is required"</span>;
                lblErrorMessage.Visible = <span style="color: #008800; font-weight: bold;">true</span>;
                <span style="color: #888888;">//MessageBox.Show("New Line Item Full Name is required");</span>
                <span style="color: #008800; font-weight: bold;">return</span>;
            }
            <span style="color: #008800; font-weight: bold;">if</span> (<span style="color: #333399; font-weight: bold;">string</span>.IsNullOrEmpty(txtIQuantity.Text))
            {
                lblErrorMessage.Text = <span style="background-color: #fff0f0;">"Invoice Refer Quantiy is required"</span>;
                lblErrorMessage.Visible = <span style="color: #008800; font-weight: bold;">true</span>;
                <span style="color: #888888;">//MessageBox.Show("Invoice Refer Quantiy is required");</span>
                <span style="color: #008800; font-weight: bold;">return</span>;
            }
            <span style="color: #008800; font-weight: bold;">if</span> (<span style="color: #333399; font-weight: bold;">string</span>.IsNullOrEmpty(txtIRate.Text))
            {
                lblErrorMessage.Text = <span style="background-color: #fff0f0;">"New Line Rate is required"</span>;
                lblErrorMessage.Visible = <span style="color: #008800; font-weight: bold;">true</span>;
                <span style="color: #888888;">//MessageBox.Show("New Line Rate is required");</span>
                <span style="color: #008800; font-weight: bold;">return</span>;
            }
            InsertInvoiceLineItem(txtIInvoiceNo.Text, txtIItemFullName.Text, <span style="color: #333399; font-weight: bold;">int</span>.Parse(txtIQuantity.Text), <span style="color: #333399; font-weight: bold;">int</span>.Parse(txtIRate.Text), txtIDescription.Text);
            DisplayInvoiceInGrid(txtIInvoiceNo.Text);
        }
        <span style="color: #008800; font-weight: bold;">catch</span> (Exception ex)
        {
            lblErrorMessage.Text = <span style="color: #333399; font-weight: bold;">string</span>.Format(<span style="background-color: #fff0f0;">"Error - {0}, Stack Trace {1}"</span>, ex.Message, ex.StackTrace);
            lblErrorMessage.Visible = <span style="color: #008800; font-weight: bold;">true</span>;
            <span style="color: #888888;">//MessageBox.Show(string.Format("Error - {0}, Stack Trace {1}", ex.Message, ex.StackTrace));</span>
        }
    }

        <span style="color: #008800; font-weight: bold;">private</span> <span style="color: #008800; font-weight: bold;">void</span> <span style="color: #0066bb; font-weight: bold;">InsertInvoiceLineDescriptionOnly</span>(<span style="color: #333399; font-weight: bold;">string</span> invoiceRefNumber, <span style="color: #333399; font-weight: bold;">string</span> newItemDescription)
        {
            OdbcDataReader QBdrdr;
            <span style="color: #333399; font-weight: bold;">string</span> txnID = <span style="color: #333399; font-weight: bold;">string</span>.Empty;
            <span style="color: #333399; font-weight: bold;">string</span> query = <span style="color: #333399; font-weight: bold;">string</span>.Format(<span style="background-color: #fff0f0;">"select txnid from InvoiceLine where RefNumber='{0}'"</span>, invoiceRefNumber);
            <span style="color: #888888;">//select the invoice and get the txnid from the existing Invoice.</span>
            <span style="color: #008800; font-weight: bold;">using</span> (OdbcCommand QBEmployeecmd = <span style="color: #008800; font-weight: bold;">new</span> OdbcCommand(query, _cn))
            {
                QBEmployeecmd.CommandType = CommandType.Text;

                QBdrdr = QBEmployeecmd.ExecuteReader();


                <span style="color: #008800; font-weight: bold;">if</span> (QBdrdr.HasRows == <span style="color: #008800; font-weight: bold;">true</span>)
                {
                    txnID = QBdrdr[<span style="background-color: #fff0f0;">"txnid"</span>].ToString();

                }
                <span style="color: #008800; font-weight: bold;">else</span>
                {
                    txnID = <span style="color: #333399; font-weight: bold;">string</span>.Empty;
                }
                QBdrdr.Close();

            }
            <span style="color: #008800; font-weight: bold;">if</span> (!<span style="color: #333399; font-weight: bold;">string</span>.IsNullOrEmpty(txnID))
            {
                query = <span style="color: #333399; font-weight: bold;">string</span>.Format(<span style="background-color: #fff0f0;">"Insert into invoiceline(txnid,InvoiceLineDesc) values('{0}','{1}') "</span>, txnID, newItemDescription);
                <span style="color: #008800; font-weight: bold;">using</span> (OdbcCommand QBEmployeecmd = <span style="color: #008800; font-weight: bold;">new</span> OdbcCommand(query, _cn))
                {
                    QBEmployeecmd.CommandType = CommandType.Text;
                    QBEmployeecmd.ExecuteNonQuery();

                    lblErrorMessage.Text = <span style="background-color: #fff0f0;">"Insert Successfully(Description Only)"</span>;
                    lblErrorMessage.Visible = <span style="color: #008800; font-weight: bold;">true</span>;
                }
            }
            <span style="color: #008800; font-weight: bold;">else</span>
            {
                lblErrorMessage.Text = <span style="background-color: #fff0f0;">"No Invoice Found"</span>;
                lblErrorMessage.Visible = <span style="color: #008800; font-weight: bold;">true</span>;
                <span style="color: #888888;">//MessageBox.Show("No Invoice Found");</span>
            }

        }


        <span style="color: #008800; font-weight: bold;">private</span> <span style="color: #008800; font-weight: bold;">void</span> <span style="color: #0066bb; font-weight: bold;">InsertInvoiceLineItem</span>(<span style="color: #333399; font-weight: bold;">string</span> invoiceRefNumber, <span style="color: #333399; font-weight: bold;">string</span> itemFullName, <span style="color: #333399; font-weight: bold;">int</span> quanity, <span style="color: #333399; font-weight: bold;">int</span> rate, <span style="color: #333399; font-weight: bold;">string</span> description)
        {
            OdbcDataReader QBdrdr;
            <span style="color: #333399; font-weight: bold;">string</span> txnID = <span style="color: #333399; font-weight: bold;">string</span>.Empty;
            <span style="color: #333399; font-weight: bold;">string</span> query = <span style="color: #333399; font-weight: bold;">string</span>.Format(<span style="background-color: #fff0f0;">"select txnid from InvoiceLine where RefNumber='{0}'"</span>, invoiceRefNumber);
            <span style="color: #888888;">//select the invoice and get the txnid from the existing Invoice.</span>
            <span style="color: #008800; font-weight: bold;">using</span> (OdbcCommand QBEmployeecmd = <span style="color: #008800; font-weight: bold;">new</span> OdbcCommand(query, _cn))
            {
                QBEmployeecmd.CommandType = CommandType.Text;

                QBdrdr = QBEmployeecmd.ExecuteReader();


                <span style="color: #008800; font-weight: bold;">if</span> (QBdrdr.HasRows == <span style="color: #008800; font-weight: bold;">true</span>)
                {
                    txnID = QBdrdr[<span style="background-color: #fff0f0;">"txnid"</span>].ToString();

                }
                <span style="color: #008800; font-weight: bold;">else</span>
                {
                    txnID = <span style="color: #333399; font-weight: bold;">string</span>.Empty;
                }
                QBdrdr.Close();

            }
            <span style="color: #008800; font-weight: bold;">if</span> (!<span style="color: #333399; font-weight: bold;">string</span>.IsNullOrEmpty(txnID))
            {
                query = <span style="color: #333399; font-weight: bold;">string</span>.Format(<span style="background-color: #fff0f0;">"Insert into invoiceline(txnid,InvoiceLineItemRefFullName, InvoiceLineQuantity, InvoiceLineRate, InvoiceLineDesc) values('{0}','{1}',{2},{3},'{4}') "</span>, txnID, itemFullName, quanity, rate, description);
                <span style="color: #008800; font-weight: bold;">using</span> (OdbcCommand QBEmployeecmd = <span style="color: #008800; font-weight: bold;">new</span> OdbcCommand(query, _cn))
                {
                    QBEmployeecmd.CommandType = CommandType.Text;
                    QBEmployeecmd.ExecuteNonQuery();
                    lblErrorMessage.Text = <span style="background-color: #fff0f0;">"Insert Successfully (Inventory/Service)"</span>;
                    lblErrorMessage.Visible = <span style="color: #008800; font-weight: bold;">true</span>;
                }
            }
            <span style="color: #008800; font-weight: bold;">else</span>
            {
                lblErrorMessage.Text = <span style="background-color: #fff0f0;">"No Invoice Found"</span>;
                lblErrorMessage.Visible = <span style="color: #008800; font-weight: bold;">true</span>;
                <span style="color: #888888;">//MessageBox.Show("No Invoice Found");</span>
            }
        }


        <span style="color: #008800; font-weight: bold;">private</span> <span style="color: #008800; font-weight: bold;">void</span> <span style="color: #0066bb; font-weight: bold;">ProcessQuery</span>(<span style="color: #333399; font-weight: bold;">string</span> query)
        {
            <span style="color: #333399; font-weight: bold;">var</span> cmd = <span style="color: #008800; font-weight: bold;">new</span> OdbcCommand(query, _cn);
            <span style="color: #888888;">//OdbcDataAdapter adapter = new OdbcDataAdapter(cmd);</span>
            DataSet dataSet = <span style="color: #008800; font-weight: bold;">new</span> DataSet();
            <span style="color: #888888;">//adapter.Fill(dataSet);</span>
            OdbcDataReader reader = cmd.ExecuteReader();
            <span style="color: #888888;">//if (reader.HasRows)</span>
            {
                DataTable myTable = <span style="color: #008800; font-weight: bold;">new</span> DataTable();
                myTable.Load(reader);
                grvData.AutoGenerateColumns = <span style="color: #008800; font-weight: bold;">true</span>;
                grvData.DataSource = myTable;
                grvData.DataBind();

            }

        }

        <span style="color: #008800; font-weight: bold;">private</span> <span style="color: #008800; font-weight: bold;">void</span> <span style="color: #0066bb; font-weight: bold;">DisplayInvoiceInGrid</span>(<span style="color: #333399; font-weight: bold;">string</span> invoiceRefNumber)
        {

            <span style="color: #333399; font-weight: bold;">string</span> query = <span style="color: #333399; font-weight: bold;">string</span>.Format(<span style="background-color: #fff0f0;">"select RefNumber,CustomerRefFullName,InvoiceLineItemRefFullName, InvoiceLineDesc, InvoiceLineRate, InvoiceLineAmount  from InvoiceLine where RefNumber='{0}'"</span>, invoiceRefNumber);
            ProcessQuery(query);
        }
    }
</pre>
</div>
<p>Keywords: sample .net, sample, .net, Dot Net, C#,C#.Net,&nbsp;ASP.NET, Web Server, IIS, C#.NET</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Sample Code for Inserting InvoiceLine to existing Invoice using PHP]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2892]]></link>
<guid isPermaLink="false"><![CDATA[6fe131632103526e3a6e8114c78eb1e1]]></guid>
<pubDate><![CDATA[Thu, 02 Mar 2017 14:26:45 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Sample Code for Inserting InvoiceLine to an existing Invoice using PHP 
 Sample Application:
Please click here to download the Sample Code.
Please refer to the steps below for using the application for inserting InvoiceLine to an existing Invoice usin...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Sample Code for Inserting InvoiceLine to an existing Invoice using PHP </span></h2>
<h3><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Sample Application:</span></h3>
<p>Please <a href="http://support.flexquarters.com/esupport/newimages/INVPHP/QODBC-Invoice-Insert-Sample-php.zip">click here</a> to download the Sample Code.</p>
<p>Please refer to the steps below for using the application for inserting InvoiceLine to an existing Invoice using PHP.</p>
<p>Run the application.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVPHP/step1.png" alt="" /></p>
<p>The application has two functionalities:</p>
<p>1. Append the existing Invoice with a new Description Line, adding a new Description Line to the current Invoice.</p>
<p>You need to insert the RefNumber (i.e., Invoice#) of the existing Invoice &amp; description which you want to enter and click on the "Insert New Invoice Line (Description Only)" button.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVPHP/step2.png" alt="" /></p>
<p>A new Description Line is added to the existing Invoice.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVPHP/step3.png" alt="" /></p>
<p>Result in QuickBooks.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVPHP/step4.png" alt="" /></p>
<p>2. Append the existing Invoice with a new ItemInventory/ItemService Line, adding a new ItemInventory/ItemService Line to the current Invoice.</p>
<p>You need to insert the RefNumber (i.e., Invoice#) of the existing Invoice, the Full Item Name, Quantity, Rate &amp; Description which you want to enter, and click on the "Insert New Invoice Line (Inventory/Service)" button.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVPHP/step5.png" alt="" /></p>
<p>A new Item Line is added to the existing Invoice.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVPHP/step6.png" alt="" /></p>
<p>Result in QuickBooks.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/INVPHP/step7.png" alt="" /></p>
<h3><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Application Source Code:</span></h3>
<div style="background: #ffffff; overflow: auto; width: auto; border: solid gray; border-width: .1em .1em .1em .8em; padding: .2em .6em;">
<pre style="margin: 0; line-height: 125%;">&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"&gt;

&lt;html&gt;
&lt;head&gt;
    &lt;title&gt;QODBC PHP Script To Display SQL Results&lt;/title&gt;

&lt;/head&gt;
&lt;body topmargin="3" leftmargin="3" marginheight="0" marginwidth="0" bgcolor="#ffffff" link="#000066" vlink="#000000" alink="#0000ff" text="#000000"&gt;


&lt;table&gt;
	&lt;tr&gt;
		&lt;td&gt;
			Append existing Invoice with a new Description line
			&lt;form name="frmDescriptionLine" id="frmDescriptionLine" method="post"&gt;
			&lt;table&gt;
				&lt;tr&gt;
					&lt;td&gt;Enter Invoice No. (RefNumber)&lt;/td&gt;
					&lt;td&gt;&lt;input type="text" name="txtInvoiceNo" id="txtInvoiceNo" style="width:250px;"/&gt;&lt;/td&gt;
				&lt;/tr&gt;
				&lt;tr&gt;
					&lt;td&gt;Enter New Item Description&lt;/td&gt;
					&lt;td&gt;&lt;input type="text" name="txtDescription" id="txtDescription"style="width:250px;"/&gt;&lt;/td&gt;
				&lt;/tr&gt;
				&lt;tr&gt;
					&lt;td colspan="2"&gt;&lt;input type="submit" name="btnDescriptionLine" id="btnDescriptionLine" value="Insert New Invoice Line (Description Only)" onclick="InsertRecord()"/&gt;&lt;/td&gt;
				&lt;/tr&gt;
				&lt;/table&gt;
			&lt;/form&gt;
		&lt;/td&gt;		
		&lt;td&gt;
			Append existing Invoice with a new  ItemInventory/ItemService Line
			&lt;form name="frmItemLine" id="frmItemLine" method="post"&gt;
			&lt;table&gt;
				&lt;tr&gt;
					&lt;td&gt;Enter Invoice No. (RefNumber)&lt;/td&gt;
					&lt;td&gt;&lt;input type="text" name="txtItemInvoiceNo" id="txtItemInvoiceNo" style="width:250px;"/&gt;&lt;/td&gt;
				&lt;/tr&gt;
				&lt;tr&gt;
					&lt;td&gt;Enter Item FullName&lt;/td&gt;
					&lt;td&gt;&lt;input type="text" name="txtItemRefDescription" id="txtItemRefDescription" style="width:250px;"/&gt;&lt;/td&gt;
				&lt;/tr&gt;
				&lt;tr&gt;
					&lt;td&gt;Quantity&lt;/td&gt;
					&lt;td&gt;&lt;input type="text" name="txtItemQuantity" id="txtItemQuantity" value="1"/&gt;&lt;/td&gt;					
				&lt;/tr&gt;
				&lt;tr&gt;
				&lt;td&gt;Rate&lt;/td&gt;
				&lt;td&gt; &lt;input type="text" name="txtItemRate" id="txtItemRate" value="1"/&gt;&lt;/td&gt;
				&lt;/tr&gt;
				&lt;tr&gt;
					&lt;td&gt;Enter Description&lt;/td&gt;
					&lt;td&gt;&lt;input type="text" name="txtItemDescription" id="txtItemDescription" style="width:250px;"/&gt;&lt;/td&gt;
				&lt;/tr&gt;
				&lt;tr&gt;
					&lt;td colspan="2"&gt;&lt;input type="submit" name="btnItemLine" id="btnItemLine" value="Insert Invoice Line (Inventory/Service)" /&gt;&lt;/td&gt;
				&lt;/tr&gt;	
				&lt;/table&gt;
			&lt;/form&gt;
		&lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;


    
&lt;/body&gt;
&lt;/html&gt;



<span style="color: #557799;">&lt;?php</span>
<span style="color: #008800; font-weight: bold;">if</span>(<span style="color: #007020;">isset</span>(<span style="color: #996633;">$_POST</span>[<span style="background-color: #fff0f0;">'btnDescriptionLine'</span>]))
{

	<span style="color: #996633;">$invoiceNo</span><span style="color: #333333;">=</span> <span style="color: #996633;">$_POST</span>[<span style="background-color: #fff0f0;">'txtInvoiceNo'</span>];
	<span style="color: #996633;">$invoiceDescr</span> <span style="color: #333333;">=</span> <span style="color: #996633;">$_POST</span>[<span style="background-color: #fff0f0;">'txtDescription'</span>];	
	<span style="color: #008800; font-weight: bold;">if</span>(<span style="color: #996633;">$invoiceNo</span> <span style="color: #333333;">==</span> <span style="background-color: #fff0f0;">""</span> <span style="color: #333333;">||</span> <span style="color: #996633;">$invoiceDescr</span> <span style="color: #333333;">==</span> <span style="background-color: #fff0f0;">""</span> )
	{
		<span style="color: #008800; font-weight: bold;">echo</span> <span style="background-color: #fff0f0;">'&lt;script language="javascript"&gt;'</span>;
		<span style="color: #008800; font-weight: bold;">echo</span> <span style="background-color: #fff0f0;">'alert("Enter Invoice No. and Invoice Line Description both.")'</span>;
		<span style="color: #008800; font-weight: bold;">echo</span> <span style="background-color: #fff0f0;">'&lt;/script&gt;'</span>;
	}
	<span style="color: #008800; font-weight: bold;">else</span>
	{
		<span style="color: #007020;">set_time_limit</span>(<span style="color: #0000dd; font-weight: bold;">120</span>);
		<span style="color: #996633;">$oConnect</span> <span style="color: #333333;">=</span> <span style="color: #007020;">odbc_connect</span>(<span style="background-color: #fff0f0;">"QuickBooks Data QRemote"</span>, <span style="background-color: #fff0f0;">""</span>, <span style="background-color: #fff0f0;">""</span>);
		<span style="color: #996633;">$sSQL</span> <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"select txnid from InvoiceLine where RefNumber='</span><span style="background-color: #eeeeee;">$invoiceNo</span><span style="background-color: #fff0f0;">'"</span>;
		<span style="color: #996633;">$oResult</span> <span style="color: #333333;">=</span> <span style="color: #007020;">odbc_exec</span>(<span style="color: #996633;">$oConnect</span>, <span style="color: #996633;">$sSQL</span>);
		<span style="color: #996633;">$lFldCnt</span> <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">0</span>;
		<span style="color: #996633;">$lFieldCount</span> <span style="color: #333333;">=</span> <span style="color: #007020;">odbc_num_fields</span>(<span style="color: #996633;">$oResult</span>);
		<span style="color: #008800; font-weight: bold;">while</span> (<span style="color: #996633;">$lFldCnt</span> <span style="color: #333333;">&lt;</span> <span style="color: #996633;">$lFieldCount</span>) {
		<span style="color: #996633;">$lFldCnt</span><span style="color: #333333;">++</span>;
        <span style="color: #996633;">$sFieldName</span> <span style="color: #333333;">=</span> <span style="color: #007020;">odbc_field_name</span>(<span style="color: #996633;">$oResult</span>, <span style="color: #996633;">$lFldCnt</span>);
		<span style="color: #888888;">//print("                        $sFieldName\n");</span>
		}		
		<span style="color: #996633;">$lRecCnt</span> <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">0</span>;
		<span style="color: #008800; font-weight: bold;">while</span>(<span style="color: #007020;">odbc_fetch_row</span>(<span style="color: #996633;">$oResult</span>)) {
		<span style="color: #996633;">$lRecCnt</span><span style="color: #333333;">++</span>;		
		<span style="color: #888888;">//print("$lRecCnt");</span>
		<span style="color: #996633;">$lFldCnt</span> <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">0</span>;
		<span style="color: #996633;">$lFieldCount</span> <span style="color: #333333;">=</span> <span style="color: #007020;">odbc_num_fields</span>(<span style="color: #996633;">$oResult</span>);		
		<span style="color: #008800; font-weight: bold;">while</span> (<span style="color: #996633;">$lFldCnt</span> <span style="color: #333333;">&lt;</span> <span style="color: #996633;">$lFieldCount</span>) {
			<span style="color: #996633;">$lFldCnt</span><span style="color: #333333;">++</span>;
			<span style="color: #996633;">$sFieldValue</span> <span style="color: #333333;">=</span> trim(<span style="color: #007020;">odbc_result</span>(<span style="color: #996633;">$oResult</span>, <span style="color: #996633;">$lFldCnt</span>));
			<span style="color: #008800; font-weight: bold;">If</span> (<span style="color: #996633;">$sFieldValue</span> <span style="color: #333333;">==</span> <span style="background-color: #fff0f0;">""</span>) {
				<span style="color: #008800; font-weight: bold;">print</span>(<span style="background-color: #fff0f0;">"</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\n</span><span style="background-color: #fff0f0;">"</span>);
			}
			<span style="color: #008800; font-weight: bold;">else</span> {
				<span style="color: #888888;">//print("$sFieldValue\n");</span>
			}
		}
		<span style="color: #888888;">//print("\n");</span>
		}				
		<span style="color: #996633;">$sSQL</span> <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"Insert into invoiceline(txnid,InvoiceLineDesc) values('</span><span style="background-color: #eeeeee;">$sFieldValue</span><span style="background-color: #fff0f0;">','</span><span style="background-color: #eeeeee;">$invoiceDescr</span><span style="background-color: #fff0f0;">')"</span>;
		<span style="color: #996633;">$oResult</span> <span style="color: #333333;">=</span> <span style="color: #007020;">odbc_exec</span>(<span style="color: #996633;">$oConnect</span>, <span style="color: #996633;">$sSQL</span>);
		<span style="color: #888888;">//$sSQL = "SELECT * FROM InvoiceLine Where txnid='$sFieldValue'";</span>
		<span style="color: #996633;">$sSQL</span> <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"SELECT RefNumber,CustomerRefFullName,InvoiceLineItemRefFullName,InvoiceLineDesc,InvoiceLineRate,InvoiceLineQuantity,InvoiceLineAmount  FROM InvoiceLine Where txnid='</span><span style="background-color: #eeeeee;">$sFieldValue</span><span style="background-color: #fff0f0;">'"</span>;
		<span style="color: #888888;">#Perform the query</span>
		<span style="color: #996633;">$oResult</span> <span style="color: #333333;">=</span> <span style="color: #007020;">odbc_exec</span>(<span style="color: #996633;">$oConnect</span>, <span style="color: #996633;">$sSQL</span>);
		<span style="color: #996633;">$lFldCnt</span> <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">0</span>;
		<span style="color: #996633;">$lFieldCount</span> <span style="color: #333333;">=</span> <span style="color: #007020;">odbc_num_fields</span>(<span style="color: #996633;">$oResult</span>);
		<span style="color: #888888;">//print("$lFieldCount");</span>
		<span style="color: #008800; font-weight: bold;">print</span>(<span style="background-color: #fff0f0;">"&lt;table border=</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\"</span><span style="background-color: #fff0f0;">1</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\"</span><span style="background-color: #fff0f0;">&gt;"</span>);
		<span style="color: #008800; font-weight: bold;">print</span>(<span style="background-color: #fff0f0;">"&lt;th&gt;Line No.&lt;/th&gt;</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\n</span><span style="background-color: #fff0f0;">"</span>);
		<span style="color: #008800; font-weight: bold;">while</span> (<span style="color: #996633;">$lFldCnt</span> <span style="color: #333333;">&lt;</span> <span style="color: #996633;">$lFieldCount</span>) {
			<span style="color: #996633;">$lFldCnt</span><span style="color: #333333;">++</span>;
				<span style="color: #996633;">$sFieldName</span> <span style="color: #333333;">=</span> <span style="color: #007020;">odbc_field_name</span>(<span style="color: #996633;">$oResult</span>, <span style="color: #996633;">$lFldCnt</span>);
			<span style="color: #008800; font-weight: bold;">print</span>(<span style="background-color: #fff0f0;">"&lt;th&gt;</span><span style="background-color: #eeeeee;">$sFieldName</span><span style="background-color: #fff0f0;">&lt;/th&gt;</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\n</span><span style="background-color: #fff0f0;">"</span>);
		}
		
		
				<span style="color: #996633;">$lRecCnt</span> <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">0</span>;
		<span style="color: #888888;">#Fetch the data from the database</span>
		<span style="color: #008800; font-weight: bold;">while</span>(<span style="color: #007020;">odbc_fetch_row</span>(<span style="color: #996633;">$oResult</span>)) {
			<span style="color: #996633;">$lRecCnt</span><span style="color: #333333;">++</span>;
			<span style="color: #008800; font-weight: bold;">print</span>(<span style="background-color: #fff0f0;">"                    &lt;tr&gt;</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\n</span><span style="background-color: #fff0f0;">"</span>);
			<span style="color: #008800; font-weight: bold;">print</span>(<span style="background-color: #fff0f0;">"                        &lt;td&gt;</span><span style="background-color: #eeeeee;">$lRecCnt</span><span style="background-color: #fff0f0;">&lt;/td&gt;</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\n</span><span style="background-color: #fff0f0;">"</span>);
			<span style="color: #996633;">$lFldCnt</span> <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">0</span>;
			<span style="color: #996633;">$lFieldCount</span> <span style="color: #333333;">=</span> <span style="color: #007020;">odbc_num_fields</span>(<span style="color: #996633;">$oResult</span>);
			<span style="color: #008800; font-weight: bold;">while</span> (<span style="color: #996633;">$lFldCnt</span> <span style="color: #333333;">&lt;</span> <span style="color: #996633;">$lFieldCount</span>) {
				<span style="color: #996633;">$lFldCnt</span><span style="color: #333333;">++</span>;
				<span style="color: #996633;">$sFieldValue</span> <span style="color: #333333;">=</span> trim(<span style="color: #007020;">odbc_result</span>(<span style="color: #996633;">$oResult</span>, <span style="color: #996633;">$lFldCnt</span>));
				<span style="color: #008800; font-weight: bold;">If</span> (<span style="color: #996633;">$sFieldValue</span> <span style="color: #333333;">==</span> <span style="background-color: #fff0f0;">""</span>) {
					<span style="color: #008800; font-weight: bold;">print</span>(<span style="background-color: #fff0f0;">"&lt;td&gt; &lt;/td&gt;</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\n</span><span style="background-color: #fff0f0;">"</span>);
				}
				<span style="color: #008800; font-weight: bold;">else</span> {
					<span style="color: #008800; font-weight: bold;">print</span>(<span style="background-color: #fff0f0;">"&lt;td valign=</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\"</span><span style="background-color: #fff0f0;">Top</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\"</span><span style="background-color: #fff0f0;">&gt;</span><span style="background-color: #eeeeee;">$sFieldValue</span><span style="background-color: #fff0f0;">&lt;/td&gt;</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\n</span><span style="background-color: #fff0f0;">"</span>);
				}
			}
			<span style="color: #008800; font-weight: bold;">print</span>(<span style="background-color: #fff0f0;">"&lt;/tr&gt;</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\n</span><span style="background-color: #fff0f0;">"</span>);
		}
		<span style="color: #008800; font-weight: bold;">print</span>(<span style="background-color: #fff0f0;">"&lt;/table&gt;"</span>);
		
		<span style="color: #007020;">odbc_close</span>(<span style="color: #996633;">$oConnect</span>);
				<span style="color: #888888;">//echo("Invoice No: " .  $invoiceNo. "&lt;br /&gt;\n");</span>
				<span style="color: #888888;">//echo("Invoice Desc: " . $invoiceDescr. "&lt;br /&gt;\n");	</span>
			}
}


<span style="color: #008800; font-weight: bold;">if</span>(<span style="color: #007020;">isset</span>(<span style="color: #996633;">$_POST</span>[<span style="background-color: #fff0f0;">'btnItemLine'</span>]))
{
	<span style="color: #996633;">$invoiceItemNo</span><span style="color: #333333;">=</span> <span style="color: #996633;">$_POST</span>[<span style="background-color: #fff0f0;">'txtItemInvoiceNo'</span>];
	<span style="color: #996633;">$invoiceItemRef</span> <span style="color: #333333;">=</span> <span style="color: #996633;">$_POST</span>[<span style="background-color: #fff0f0;">'txtItemRefDescription'</span>];
	<span style="color: #996633;">$invoiceItemQuantity</span> <span style="color: #333333;">=</span> <span style="color: #996633;">$_POST</span>[<span style="background-color: #fff0f0;">'txtItemQuantity'</span>];
	<span style="color: #996633;">$invoiceItemRate</span> <span style="color: #333333;">=</span> <span style="color: #996633;">$_POST</span>[<span style="background-color: #fff0f0;">'txtItemRate'</span>];
	<span style="color: #996633;">$invoiceItemDescr</span> <span style="color: #333333;">=</span> <span style="color: #996633;">$_POST</span>[<span style="background-color: #fff0f0;">'txtItemDescription'</span>];	
	<span style="color: #008800; font-weight: bold;">if</span>(<span style="color: #996633;">$invoiceItemNo</span> <span style="color: #333333;">==</span> <span style="background-color: #fff0f0;">""</span> <span style="color: #333333;">||</span> <span style="color: #996633;">$invoiceItemDescr</span> <span style="color: #333333;">==</span> <span style="background-color: #fff0f0;">""</span> <span style="color: #333333;">||</span> <span style="color: #996633;">$invoiceItemRef</span> <span style="color: #333333;">==</span> <span style="background-color: #fff0f0;">""</span> <span style="color: #333333;">||</span> <span style="color: #996633;">$invoiceItemQuantity</span> <span style="color: #333333;">==</span><span style="background-color: #fff0f0;">""</span> <span style="color: #333333;">||</span> <span style="color: #996633;">$invoiceItemRate</span> <span style="color: #333333;">==</span><span style="background-color: #fff0f0;">""</span> )
	{
		<span style="color: #008800; font-weight: bold;">echo</span> <span style="background-color: #fff0f0;">'&lt;script language="javascript"&gt;'</span>;
		<span style="color: #008800; font-weight: bold;">echo</span> <span style="background-color: #fff0f0;">'alert("Fill the Details properly")'</span>;
		<span style="color: #008800; font-weight: bold;">echo</span> <span style="background-color: #fff0f0;">'&lt;/script&gt;'</span>;
	}
	<span style="color: #008800; font-weight: bold;">else</span>
	{		
		<span style="color: #007020;">set_time_limit</span>(<span style="color: #0000dd; font-weight: bold;">120</span>);
		<span style="color: #996633;">$oConnect</span> <span style="color: #333333;">=</span> <span style="color: #007020;">odbc_connect</span>(<span style="background-color: #fff0f0;">"QuickBooks Data QRemote"</span>, <span style="background-color: #fff0f0;">""</span>, <span style="background-color: #fff0f0;">""</span>);
		<span style="color: #996633;">$sSQL</span> <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"select txnid from InvoiceLine where RefNumber='</span><span style="background-color: #eeeeee;">$invoiceItemNo</span><span style="background-color: #fff0f0;">'"</span>;
		<span style="color: #996633;">$oResult</span> <span style="color: #333333;">=</span> <span style="color: #007020;">odbc_exec</span>(<span style="color: #996633;">$oConnect</span>, <span style="color: #996633;">$sSQL</span>);
		<span style="color: #888888;">//echo $oResult;</span>
		<span style="color: #996633;">$lFldCnt</span> <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">0</span>;
		<span style="color: #996633;">$lFieldCount</span> <span style="color: #333333;">=</span> <span style="color: #007020;">odbc_num_fields</span>(<span style="color: #996633;">$oResult</span>);
		<span style="color: #008800; font-weight: bold;">while</span> (<span style="color: #996633;">$lFldCnt</span> <span style="color: #333333;">&lt;</span> <span style="color: #996633;">$lFieldCount</span>) {
		<span style="color: #996633;">$lFldCnt</span><span style="color: #333333;">++</span>;
        <span style="color: #996633;">$sFieldName</span> <span style="color: #333333;">=</span> <span style="color: #007020;">odbc_field_name</span>(<span style="color: #996633;">$oResult</span>, <span style="color: #996633;">$lFldCnt</span>);		
		}		
		<span style="color: #996633;">$lRecCnt</span> <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">0</span>;
		<span style="color: #008800; font-weight: bold;">while</span>(<span style="color: #007020;">odbc_fetch_row</span>(<span style="color: #996633;">$oResult</span>)) {
		<span style="color: #996633;">$lRecCnt</span><span style="color: #333333;">++</span>;		
		<span style="color: #888888;">//print("$lRecCnt");</span>
		<span style="color: #996633;">$lFldCnt</span> <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">0</span>;
		<span style="color: #996633;">$lFieldCount</span> <span style="color: #333333;">=</span> <span style="color: #007020;">odbc_num_fields</span>(<span style="color: #996633;">$oResult</span>);		
		<span style="color: #008800; font-weight: bold;">while</span> (<span style="color: #996633;">$lFldCnt</span> <span style="color: #333333;">&lt;</span> <span style="color: #996633;">$lFieldCount</span>) {
			<span style="color: #996633;">$lFldCnt</span><span style="color: #333333;">++</span>;
			<span style="color: #996633;">$sFieldValue</span> <span style="color: #333333;">=</span> trim(<span style="color: #007020;">odbc_result</span>(<span style="color: #996633;">$oResult</span>, <span style="color: #996633;">$lFldCnt</span>));
			<span style="color: #008800; font-weight: bold;">If</span> (<span style="color: #996633;">$sFieldValue</span> <span style="color: #333333;">==</span> <span style="background-color: #fff0f0;">""</span>) {
				<span style="color: #008800; font-weight: bold;">print</span>(<span style="background-color: #fff0f0;">"</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\n</span><span style="background-color: #fff0f0;">"</span>);
			}
			<span style="color: #008800; font-weight: bold;">else</span> {
				<span style="color: #888888;">//print("$sFieldValue\n");</span>
			}
		}
		<span style="color: #008800; font-weight: bold;">print</span>(<span style="background-color: #fff0f0;">"</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\n</span><span style="background-color: #fff0f0;">"</span>);
		}		
		
		<span style="color: #996633;">$sSQL</span> <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"Insert into invoiceline(txnid,InvoiceLineItemRefFullName, InvoiceLineQuantity, InvoiceLineRate, InvoiceLineDesc) values('</span><span style="background-color: #eeeeee;">$sFieldValue</span><span style="background-color: #fff0f0;">','</span><span style="background-color: #eeeeee;">$invoiceItemRef</span><span style="background-color: #fff0f0;">',</span><span style="background-color: #eeeeee;">$invoiceItemQuantity</span><span style="background-color: #fff0f0;">,</span><span style="background-color: #eeeeee;">$invoiceItemRate</span><span style="background-color: #fff0f0;">,'</span><span style="background-color: #eeeeee;">$invoiceItemDescr</span><span style="background-color: #fff0f0;">')"</span>;
		<span style="color: #888888;">/*if($oResult = odbc_exec($oConnect, $sSQL)){</span>
<span style="color: #888888;">			echo '&lt;script language="javascript"&gt;';</span>
<span style="color: #888888;">			echo 'alert("Success")';</span>
<span style="color: #888888;">			echo '&lt;/script&gt;';</span>
<span style="color: #888888;">		}</span>
<span style="color: #888888;">		else</span>
<span style="color: #888888;">		{</span>
<span style="color: #888888;">			echo $oResult; exit();</span>
<span style="color: #888888;">		}*/</span>		
		<span style="color: #888888;">//print($oResult);</span>
		<span style="color: #996633;">$oResult</span> <span style="color: #333333;">=</span> <span style="color: #007020;">odbc_exec</span>(<span style="color: #996633;">$oConnect</span>, <span style="color: #996633;">$sSQL</span>);
		
		<span style="color: #996633;">$sSQL</span> <span style="color: #333333;">=</span> <span style="background-color: #fff0f0;">"SELECT RefNumber,CustomerRefFullName,InvoiceLineItemRefFullName,InvoiceLineDesc,InvoiceLineRate,InvoiceLineQuantity,InvoiceLineAmount FROM InvoiceLine Where txnid='</span><span style="background-color: #eeeeee;">$sFieldValue</span><span style="background-color: #fff0f0;">'"</span>;
		<span style="color: #888888;">//$sSQL = "SELECT * FROM InvoiceLine Where txnid='$sFieldValue'";</span>
		<span style="color: #888888;">#Perform the query</span>
		<span style="color: #996633;">$oResult</span> <span style="color: #333333;">=</span> <span style="color: #007020;">odbc_exec</span>(<span style="color: #996633;">$oConnect</span>, <span style="color: #996633;">$sSQL</span>);
		
		<span style="color: #996633;">$lFldCnt</span> <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">0</span>;
		<span style="color: #996633;">$lFieldCount</span> <span style="color: #333333;">=</span> <span style="color: #007020;">odbc_num_fields</span>(<span style="color: #996633;">$oResult</span>);
		<span style="color: #888888;">//print("$lFieldCount");</span>
		<span style="color: #008800; font-weight: bold;">print</span>(<span style="background-color: #fff0f0;">"&lt;table border=</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\"</span><span style="background-color: #fff0f0;">1</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\"</span><span style="background-color: #fff0f0;">&gt;"</span>);
		<span style="color: #008800; font-weight: bold;">print</span>(<span style="background-color: #fff0f0;">"&lt;th&gt;Line No.&lt;/th&gt;</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\n</span><span style="background-color: #fff0f0;">"</span>);
		<span style="color: #008800; font-weight: bold;">while</span> (<span style="color: #996633;">$lFldCnt</span> <span style="color: #333333;">&lt;</span> <span style="color: #996633;">$lFieldCount</span>) {
			<span style="color: #996633;">$lFldCnt</span><span style="color: #333333;">=</span> <span style="color: #996633;">$lFldCnt</span><span style="color: #333333;">+</span><span style="color: #0000dd; font-weight: bold;">1</span>;
				<span style="color: #996633;">$sFieldName</span> <span style="color: #333333;">=</span> <span style="color: #007020;">odbc_field_name</span>(<span style="color: #996633;">$oResult</span>, <span style="color: #996633;">$lFldCnt</span>);
			<span style="color: #008800; font-weight: bold;">print</span>(<span style="background-color: #fff0f0;">"&lt;th&gt;</span><span style="background-color: #eeeeee;">$sFieldName</span><span style="background-color: #fff0f0;">&lt;/th&gt;</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\n</span><span style="background-color: #fff0f0;">"</span>);
		}
				<span style="color: #996633;">$lRecCnt</span> <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">0</span>;
		<span style="color: #888888;">#Fetch the data from the database</span>
		<span style="color: #008800; font-weight: bold;">while</span>(<span style="color: #007020;">odbc_fetch_row</span>(<span style="color: #996633;">$oResult</span>)) {
			<span style="color: #996633;">$lRecCnt</span><span style="color: #333333;">++</span>;
			<span style="color: #008800; font-weight: bold;">print</span>(<span style="background-color: #fff0f0;">"&lt;tr&gt;</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\n</span><span style="background-color: #fff0f0;">"</span>);
			<span style="color: #008800; font-weight: bold;">print</span>(<span style="background-color: #fff0f0;">"&lt;td&gt;</span><span style="background-color: #eeeeee;">$lRecCnt</span><span style="background-color: #fff0f0;">&lt;/td&gt;</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\n</span><span style="background-color: #fff0f0;">"</span>);
			<span style="color: #996633;">$lFldCnt</span> <span style="color: #333333;">=</span> <span style="color: #0000dd; font-weight: bold;">0</span>;
			<span style="color: #996633;">$lFieldCount</span> <span style="color: #333333;">=</span> <span style="color: #007020;">odbc_num_fields</span>(<span style="color: #996633;">$oResult</span>);
			<span style="color: #008800; font-weight: bold;">while</span> (<span style="color: #996633;">$lFldCnt</span> <span style="color: #333333;">&lt;</span> <span style="color: #996633;">$lFieldCount</span>) {
				<span style="color: #996633;">$lFldCnt</span><span style="color: #333333;">++</span>;
				<span style="color: #996633;">$sFieldValue</span> <span style="color: #333333;">=</span> trim(<span style="color: #007020;">odbc_result</span>(<span style="color: #996633;">$oResult</span>, <span style="color: #996633;">$lFldCnt</span>));
				<span style="color: #008800; font-weight: bold;">If</span> (<span style="color: #996633;">$sFieldValue</span> <span style="color: #333333;">==</span> <span style="background-color: #fff0f0;">""</span>) {
					<span style="color: #008800; font-weight: bold;">print</span>(<span style="background-color: #fff0f0;">"&lt;td&gt; &lt;/td&gt;</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\n</span><span style="background-color: #fff0f0;">"</span>);
				}
				<span style="color: #008800; font-weight: bold;">else</span> {
					<span style="color: #008800; font-weight: bold;">print</span>(<span style="background-color: #fff0f0;">"&lt;td valign=</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\"</span><span style="background-color: #fff0f0;">Top</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\"</span><span style="background-color: #fff0f0;">&gt;</span><span style="background-color: #eeeeee;">$sFieldValue</span><span style="background-color: #fff0f0;">&lt;/td&gt;</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\n</span><span style="background-color: #fff0f0;">"</span>);
				}
			}
			<span style="color: #008800; font-weight: bold;">print</span>(<span style="background-color: #fff0f0;">"&lt;/tr&gt;</span><span style="color: #666666; font-weight: bold; background-color: #fff0f0;">\n</span><span style="background-color: #fff0f0;">"</span>);
		}
		<span style="color: #008800; font-weight: bold;">print</span>(<span style="background-color: #fff0f0;">"&lt;/table&gt;"</span>);
		
		<span style="color: #007020;">odbc_close</span>(<span style="color: #996633;">$oConnect</span>);
				<span style="color: #888888;">//echo("Invoice No: " .  $invoiceNo. "&lt;br /&gt;\n");</span>
				<span style="color: #888888;">//echo("Invoice Desc: " . $invoiceDescr. "&lt;br /&gt;\n");	</span>
			}
}


<span style="color: #557799;">?&gt;</span>	
</pre>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - How do I get company business number]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2891]]></link>
<guid isPermaLink="false"><![CDATA[7a006957be65e608e863301eb98e1808]]></guid>
<pubDate><![CDATA[Thu, 02 Mar 2017 11:51:06 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[Troubleshooting - How do I get the company business number
Problem Description:
In QuickBooks Enterprise, the company information form shows me the company's business#.In a custom report, the field is displayed as blank.In VBDEMO, the field shows as bla...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">Troubleshooting - How do I get the company business number</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>In QuickBooks Enterprise, the company information form shows me the company's business#.<br /><br />In a custom report, the field is displayed as blank.<br /><br />In VBDEMO, the field shows as blank.<br /><br />I double-checked my odbc setup, which allows personal data to be accessed.</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>The company information is on the Company table, i.e.</p>
<p>Select * from the company.</p>
<p>The information you see is what is allowed by Intuit's QBXML SDK. Specific columns are only available in their respective country versions of QuickBooks, while "specialized to country" company information may not appear. '</p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - Cannot load Customer table records]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2889]]></link>
<guid isPermaLink="false"><![CDATA[7f018eb7b301a66658931cb8a93fd6e8]]></guid>
<pubDate><![CDATA[Mon, 20 Feb 2017 11:34:50 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[Troubleshooting - Cannot load Customer table records.
Problem Description:
I am trying to query the Customer table. The Title Bar of the Access Application says Not responding. Still, it never opens for me in the datasheet view, either by double-clickin...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">Troubleshooting - Cannot load Customer table records.</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>I am trying to query the Customer table. The Title Bar of the Access Application says Not responding. Still, it never opens for me in the datasheet view, either by double-clicking the table or running a query; no error message is ever returned, but the screen maintains an hourglass.</p>
<p><br />I am getting the following error in QODBC logs:<br /><br />2016-07-19 13:55:05 QODBC Ver: 16.00.00.313 *********************************************************************************************************************<br />service: False<br />SQL Statement: SELECT * FROM Customer<br />Error Getting XML in BuildAndLoadXMLForNextRecord</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>Please enable the QODBC status panel via QODBC Setup Screen-&gt;Message Window-&gt;Select "Display Driver Status" and "Display optimizer Status" options.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CustLoad/step1.png" alt="" /></p>
<p>&nbsp;</p>
<p>After enabling the Status Panel, run the query again. If you see <strong>&ldquo;Waiting for QuickBooks,&rdquo;</strong> it means that QuickBooks is still processing the request. The Status Panel, located in the lower-right corner of your screen, displays information about the operation QODBC is currently performing.</p>
<p>This issue may also occur if your company file contains a large number of records in the <strong>CustomerShipToAddress</strong> table.</p>
<p>When working with large record sets, you may need to adjust the <strong>Iterator/Chunk Size</strong> setting in the <strong>Advanced</strong> tab of the QODBC Setup Screen to accommodate the largest record set returned by QuickBooks. The default value is <strong>500</strong>, but it can be increased to any value up to <strong>100,000</strong>.</p>
<p>To resolve the issue, please download and install the latest version of QODBC (<strong>build 361 or later</strong>) from the <a href="http://www.qodbc.com/qodbcDownload.htm">QODBC Download page</a>.</p>
<p>&nbsp;</p>
<p>After downloading the latest QODBC version, please change the iterator chunk size to 2/10/50/100 on the QODBC Setup Screen-&gt;Advanced tab.</p>
<p align="center"><img src="//support.flexquarters.com/esupport/newimages/CustLoad/step2.png" alt="" /></p>
<p>After changing the chunk size, please query the customer table again. You should be able to get records in the Customer table.</p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - Update Query optimization.]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2882]]></link>
<guid isPermaLink="false"><![CDATA[2ef35a8b78b572a47f56846acbeef5d3]]></guid>
<pubDate><![CDATA[Wed, 04 Jan 2017 10:40:21 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[Troubleshooting - Update Query optimization.
Problem Description:
Can you give me some insights on optimizing an update query to the PriceLevelPerItem table?I am trying to update all of my existing price levels, and I'm looping through each inventory it...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">Troubleshooting - Update Query optimization.</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p>Can you give me some insights on optimizing an update query to the PriceLevelPerItem table?<br /><br />I am trying to update all of my existing price levels, and I'm looping through each inventory item in a specific category and updating the item in the PriceLevelPerItem table. Here is my SQL update <br /><br />UPDATE PriceLevelPeritem SET PriceLevelPerItemCustomPrice = 38.35 WHERE ListID = '8000000D-1177165668' AND PriceLevelPerItemItemRefListID = '800004B9-1175625788' <br /><br />I believe the ListID and the ItemRefListID are both jumps in points, but my driver status counts through the records and then stops at the record to update, and appears to hang in Access and VBDemo. I have gotten it to update at times, but others go into limbo, and with 22,000 items to update, I am hoping you can help me make this work.&nbsp;</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p>The Intuit QBXML SDK requires us to modify the whole PriceLevelPerItem table with every insert or update, so the more levels and items you have, the longer it will take. The problem is that Intuit requires the entire list to be updated with every operation, not a single row like the rest of QuickBooks!</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - Getting Error [QODBC] Requires at least one child. Cannot delete last line]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2873]]></link>
<guid isPermaLink="false"><![CDATA[efd7e9ed0e5e694ba6df444d84dfa37d]]></guid>
<pubDate><![CDATA[Tue, 13 Dec 2016 06:40:04 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[Troubleshooting - Getting Error [QODBC] Requires at least one child. I cannot delete the last line 
Problem Description:
 I entered a series of purchase orders with queries that look like this:INSERT INTO PurchaseOrderLine ("VendorRefListID", "RefNumber...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">Troubleshooting - Getting Error [QODBC] Requires at least one child. I cannot delete the last line </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;"> I entered a series of purchase orders with queries that look like this:<br /><br />INSERT INTO PurchaseOrderLine ("VendorRefListID", "RefNumber", "PurchaseOrderLineItemRefListID", "PurchaseOrderLineDesc", "PurchaseOrderLineQuantity", "PurchaseOrderLineRate", "PurchaseOrderLineAmount", "FQSaveToCache") VALUES ('8000002F-1480957977', '1485', '800002C0-1480957977', '50-pc briquette set for hp 94751', 500, 8.00, 4000.00, 0); <br /><br />I ran queries for c. 400 line items for 48 po's.<br /><br />This resulted in two distinct po's for each PO number, twice as many line items as I had intended.<br /><br />I first thought to start over and try again. To that end, I ran this:<br /><br />Delete FROM PurchaseOrderLine where TxnID='2770-1071519624'<br /><br /><br /><br />ERROR: [QODBC] Requires at least one child. I cannot delete the last line. This results in this error: This results in this error: This results in this error:<br /><br /> </span></p>
<p align="center">&nbsp;<img src="//support.flexquarters.com/esupport/newimages/Require1Child/step1.png" alt="" width="625" height="395" /></p>
<p>So, I'm out of ideas.<br /><br />Please tell me how to get rid of the duplicates.&nbsp;</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;">You have only one line item in a PurchaseOrderLine table for that particular TxnId. You cannot use the last line item, which is associated with the header row of PurchaseOrder. You cannot delete the previous line.<br /><br />You need to delete the header row from the PurchaseOrder table, so please try to delete the row for that particular TxnID from the PurchaseOrder table. Please verify the same &amp; try again. <br /><br />Please refer to the sample query &amp; check again. <br /><br />For Example:<br /><br />Delete FROM PurchaseOrder where TxnID='2770-1071519624'<br /><br /> </span></p>
<p align="center">&nbsp;<img src="//support.flexquarters.com/esupport/newimages/Require1Child/step2.png" alt="" /></p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - Refunding Credit Cards - There was an error when parsing the provided XML file.]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2866]]></link>
<guid isPermaLink="false"><![CDATA[801fd8c2a4e79c1d24a40dc735c051ae]]></guid>
<pubDate><![CDATA[Thu, 24 Nov 2016 11:09:57 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - Refunding Credit Cards - There was an error when parsing the provided XML file. 
Problem Description:
 Hello, I am trying to refund CC payments in QuickBooks. I can create the credit memo. However, when attempting to add the refund us...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - Refunding Credit Cards - There was an error when parsing the provided XML file. </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;"> Hello, I am trying to refund CC payments in QuickBooks. I can create the credit memo. However, when attempting to add the refund using the following, it fails: <br /><br />Insert into ARRefundCreditCardRefundAppliedTo (CustomerRefListID, CustomerRefFullName, RefundAppliedToTxnTxnID) values('80001E51-1445438531', 'Dude, Aaron - Homes Financial,' 'C5B2E-1479513412 ') <br /><br />According to the following: <a href="http://doc.qodbc.com/qodbc/usa/TableDetails.php?tableName=ARRefundCreditCardRefundAppliedTo" target="_blank">http://doc.qodbc.com/qodbc/usa/TableDetails.php?tableName=ARRefundCreditCardRefundAppliedTo</a> <br /><br />The only fields required on the insert are CustomerRefListID, CustomerRefFullName, and RefundAppliedToTxnTxnID.<br /><br />And yet the insert above fails. I ensured that the three fields exist where RefundAppliedToTxnTxnID is the txnID of an existing credit memo.&nbsp;<br /><br />What am I doing wrong?</span>&nbsp;</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;"> You need to include RefundAppliedToTxnRefRefundAmount in your query &amp; test again. <br /><br />Please refer to the sample query &amp; test again. <br /><br />Insert into ARRefundCreditCardRefundAppliedTo (CustomerRefListID, CustomerRefFullName, RefundAppliedToTxnTxnID, RefundAppliedToTxnRefRefundAmount) values('800000D0-1182061376', 'Allard, Robert,' '1B3D0-1513329686',123321) <br /><br />To process a credit card refund, you must include credit card-related information. <br /><br />For Example:<br /><br />Insert into ARRefundCreditCardRefundAppliedTo (CustomerRefListID, CustomerRefFullName, RefundAppliedToTxnTxnID,RefundAppliedToTxnRefRefundAmount, CreditCardTxnInfoInputCreditCardNumber,CreditCardTxnInfoInputExpirationMonth,CreditCardTxnInfoInputExpirationYear,CreditCardTxnInfoInputNameOnCard,CreditCardTxnInfoResultResultCode,CreditCardTxnInfoResultResultMessage,CreditCardTxnInfoResultCreditCardTransID,CreditCardTxnInfoResultMerchantAccountNumber,CreditCardTxnInfoResultTxnAuthorizationTime,CreditCardTxnInfoResultTxnAuthorizationStamp,CreditCardTxnInfoResultAVSStreet,CreditCardTxnInfoResultAVSZip,CreditCardTxnInfoResultCardSecurityCodeMatch,CreditCardTxnInfoResultReconBatchID,CreditCardTxnInfoResultPaymentGroupingCode,CreditCardTxnInfoResultPaymentStatus,CreditCardTxnInfoResultClientTransID) values('800000D0-1182061376', 'Allard, Robert', '1B3D0-1513329686',123321, '1234567890123456',5,18,'Test',1,'Success','a-436432','45522522',{ts '2016-05-05 00:00:00.000'},1,'Pass','Pass','NotAvailable','ss,1,'Completed','S-12347') <br /><br /> <strong>Note:</strong> Execution of the above requires the Company file to be subscribed to QuickBooks Merchant Account Services. <br /><br /> </span></p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - Unable to load all customer records due to CustomerShippingAddress]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2865]]></link>
<guid isPermaLink="false"><![CDATA[85690f81aadc1749175c187784afc9ee]]></guid>
<pubDate><![CDATA[Thu, 24 Nov 2016 09:00:41 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - Unable to load all customer records due to CustomerShippingAddress 
Problem Description:
 I am unable to load all customer records through QODBC.I have a large number of customers with ship-to addresses. I have tried to execute the qu...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - Unable to load all customer records due to CustomerShippingAddress </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;"> I am unable to load all customer records through QODBC.<br /><br />I have a large number of customers with ship-to addresses. <br /><br />I have tried to execute the query using the UNOPTIMIZED keyword. But still didn't get the records.<br /><br />I have noticed the following error in QODBC logs.<br /><br />SELECT * FROM Customer UNOPTIMIZED<br /><br />Error Getting XML in BuildAndLoadXMLForNextRecord</span>&nbsp;</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;"> Please follow the steps below &amp; test again.<br /><br />1. Open the QODBC Setup Screen from the Advanced tab. Set the iterator size to 10.<br /><br />Start &gt;&gt; All Programs &gt;&gt; QODBC Driver for use with QuickBooks &gt;&gt; Configure QODBC Data Source &gt;&gt; Go To "User DSN" or "System DSN" Tab (i.e., Whatever DSN you are using)&gt;&gt; select your DSN &gt;&gt; click "configure" &gt;&gt; switch to Advanced tab &gt;&gt; Set Iterator or Chunk Size to 10 &amp; apply changes. <br /><br /> </span></p>
<p align="center">&nbsp;<img src="//support.flexquarters.com/esupport/newimages/CShipTo/step1.png" alt="" /></p>
<p>2. Execute the query below in the Customer table.<br /><br />Select * from Customer UNOPTIMIZED<br /><br /> <strong>OR</strong><br /><br />Query the table Customer with filter ListID or FullName.<br /><br />For Example:<br /><br />Select * from Customer UNOPTIMIZED where fullname='ABC.'<br /><br /> <strong>OR</strong><br /><br />Attempt to optimize the customer table through <strong>QODBC Test Tool</strong>&nbsp;using the below query &amp; check again. (Retry if fail).<br /><br />SP_OPTIMIZEFULLSYNC Customer</p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - Does QODBC support &quot;like 'i%'&quot;?]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2853]]></link>
<guid isPermaLink="false"><![CDATA[d3aeec875c479e55d1cdeea161842ec6]]></guid>
<pubDate><![CDATA[Thu, 10 Nov 2016 07:41:50 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[Troubleshooting - Does QODBC support "like 'i%'"? 
Problem Description:
How should the following SQL query be written to work with QODBC, using the "like" filter to restrict records? SELECT Sales.RefNumber, Sales.BillAddressAddr1, Sales.Type, Sales.TxnD...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">Troubleshooting - Does QODBC support "like 'i%'"? </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;">How should the following SQL query be written to work with QODBC, using the "like" filter to restrict records? <br /><br />SELECT Sales.RefNumber, Sales.BillAddressAddr1, Sales.Type, Sales.TxnDate FROM Sales WHERE Sales.BillAddressAddr1 = 'Customer Name' AND Sales.TxnDate &lt;= {d '2006-04-09'} AND LOWER(Sales.Type) LIKE 'c%' ORDER BY RefNumber</span></p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;"> There's no problem with LIKE any value. However, that's not how we support the LOWER function. This query executes without error: <br /><br />SELECT Sales.RefNumber, Sales.BillAddressAddr1, Sales.Type, Sales.TxnDate FROM Sales WHERE Sales.BillAddressAddr1 = 'Customer Name' AND Sales.TxnDate &lt;= {d '2006-04-09'} AND {fn LCASE(Sales.Type)} LIKE 'c%' ORDER BY RefNumber<br /><br />But I don't have any "Credit "data that qualifies. However, running the following query shows how "i%" works to find "Invoice" type sales:<br /><br />SELECT Sales.RefNumber, Sales.BillAddressAddr1, Sales.Type, Sales.TxnDate FROM Sales where {fn LCASE(Sales.Type)} LIKE 'i%' ORDER BY RefNumber<br /><br /> </span></p>
<p align="center">&nbsp;<img src="//support.flexquarters.com/esupport/newimages/Like/step1.png" alt="" /></p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - Error 3180 - The credit limit for the name on this transaction has been exceeded]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2852]]></link>
<guid isPermaLink="false"><![CDATA[881c6efa917cff1c97a74e03e15f43e8]]></guid>
<pubDate><![CDATA[Thu, 10 Nov 2016 07:33:56 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[Troubleshooting - Error 3180 - The credit limit for the name on this transaction has been exceeded 
Problem Description:
We use QOBDC Read Write 8.00.00.234 with QuickBooks Enterprise 2007.When trying to save a SalesOrder with three SalesOrderLines, ret...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">Troubleshooting - Error 3180 - The credit limit for the name on this transaction has been exceeded </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;">We use QOBDC Read Write 8.00.00.234 with QuickBooks Enterprise 2007.<br /><br />When trying to save a SalesOrder with three SalesOrderLines, return this error:<br /><br />[QODBC] Error: 3180 - There was an error when saving a Sales Order. QuickBooks error message: The credit limit for the name on this transaction has been exceeded.<br /><br />This is by the credit limit of the Customer in QuickBooks or transaction values in the insert query.<br /><br />Some options to resolve this problem?</span></p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;"> The credit limit for the customer on the Sales Order has been exceeded. Correct the customer's credit limit using the QuickBooks user interface. </span></p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - Check IsToBePrinted update query]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2851]]></link>
<guid isPermaLink="false"><![CDATA[d3d80b656929a5bc0fa34381bf42fbdd]]></guid>
<pubDate><![CDATA[Thu, 10 Nov 2016 07:28:17 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[Troubleshooting - Check the IsToBePrinted update query.
Problem Description:
I'm having a problem running this SQL statement in QODBC Test Tool. The application returns an error message: [QODBC] Not supported. UPDATE Check SET IsToBePrinted = 1 WHERE Tx...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">Troubleshooting - Check the IsToBePrinted update query.</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;">I'm having a problem running this SQL statement in <strong>QODBC Test Tool</strong>. The application returns an error message: [QODBC] Not supported. <br /><br />UPDATE Check SET IsToBePrinted = 1 WHERE TxnID = 'B9A6A-1197976027'<br /><br />I'm using QuickBooks Premier: Manufacturing and Wholesale Edition 2007/08</span></p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;"> You will need to upgrade to QuickBooks QuickBooks Series 2008/09 for this to work. The Australian version of QuickBooks 2007/08 uses SDK v3.0 from the USA version of QuickBooks 2004, which doesn't support modifying checks (cheques). </span></p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - Where is Retained Earnings data found?]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2850]]></link>
<guid isPermaLink="false"><![CDATA[e833e042f509c996b1b25324d56659fb]]></guid>
<pubDate><![CDATA[Thu, 10 Nov 2016 07:21:06 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[Troubleshooting - Where is Retained Earnings data found? 
Problem Description:
I cannot find a table with the retained earnings listed in it.Furthermore, I found no transactions for this account, yet QuickBooks reports two closing entries.In the account...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">Troubleshooting - Where is Retained Earnings data found? </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;">I cannot find a table with the retained earnings listed in it.<br /><br />Furthermore, I found no transactions for this account, yet QuickBooks reports two closing entries.<br /><br />In the account table, I have a zero value. On the balance sheet, it is quite NON-ZERO. Drilling in shows a single-line balance.<br /><br />And for the previous two years, there has been a posted amount with a closing date.<br /><br />It takes a WHILE when you double-click the account, so it looks like it is calculating these two values.<br /><br />Is it STORED or calculated? Because it is not in the account table.<br /><br /></span></p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;"> I assume you mean "Retaining Earnings" on your balance sheet. The value is in the Account table. <br /><br />Retained Earnings are calculated from the Profit &amp; Loss statement and are the current profit or loss. The current value appears in the Account table:</span></p>
<p align="center">&nbsp;<img src="//support.flexquarters.com/esupport/newimages/Retain/step1.png" alt="" /></p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - How to Insert Update PayrollItemNonWage like Auto Allowance,Benefits,Federal Income etc]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2849]]></link>
<guid isPermaLink="false"><![CDATA[2217ad1dd50c1017d3df6b44b7c45508]]></guid>
<pubDate><![CDATA[Thu, 10 Nov 2016 07:12:22 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[Troubleshooting - How to Insert Update PayrollItemNonWage like Auto Allowance, Benefits, Federal Income, etc 
Problem Description:
How can we update the Insert PayrollItemNonWage field as Auto Allowance, Benefits, Federal Income, etc.? Suppose we add, I...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">Troubleshooting - How to Insert Update PayrollItemNonWage like Auto Allowance, Benefits, Federal Income, etc </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;">How can we update the Insert PayrollItemNonWage field as Auto Allowance, Benefits, Federal Income, etc.? <br /><br />Suppose we add, Item Name -- Amount ---- limit. For time-based employees, how to calculate it.</span>&nbsp;</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;"> Sorry, but you can't run payrolls from within QODBC. They are run from within QuickBooks. None of the columns in PayrollItemNonWage are insertable. </span></p>
<p align="center">&nbsp;<img src="//support.flexquarters.com/esupport/newimages/PayrollItemNonWage/step1.png" alt="" /></p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - Easiest way to make report showing average time between receipt and invoice of item]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2848]]></link>
<guid isPermaLink="false"><![CDATA[5a2756a3cb9cde852cad3c97e120b656]]></guid>
<pubDate><![CDATA[Thu, 10 Nov 2016 06:55:06 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[Troubleshooting - Easiest way to make a report showing the average time between receipt and invoice of the item 
Problem Description:
I want to make a report to show me which items are selling quickly and slowly. I figure I need to look at the length of...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">Troubleshooting - Easiest way to make a report showing the average time between receipt and invoice of the item </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;">I want to make a report to show me which items are selling quickly and slowly. I figure I need to look at the length of time between the item receipt date and the item invoice date. I made a report in Crystal Reports that does this, using the InvoiceLine and ItemReceiptItemLine tables, and I think it works, but it takes so&nbsp;long to run that I'm not sure. It's never finished. I guess I'll start going when I leave tonight and see if it will be completed overnight. <br /><br />Is there another way to do this? Am I on the right track? Is there an existing report that will give me this information? It seems like it would be an everyday thing that many people would want to know. <br /><br />For the most part, each item I sell is unique and has a unique name. So, for a given item, there is only one receipt and one invoice, then no more receipts of that item ever again. Does that make it any easier to track? <br /><br />Mostly they are received with a bill through. Occasionally, on just an item receipt w/o a bill. <br /><br />How do I filter results by account? (income, asset, or COGS account)&nbsp;</span>&nbsp;</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;"> This approach will only work if all stock parts are item receipted without a bill. There's no tracking of each piece received and when it's sold. So it will take a bit of work to make this work well. <br /><br />If that's the case, you can start with this:- <br /><br />Select BillItemLine.ItemLineItemRefFullName, BillItemLine.RefNumber as BillRef, BillItemLine.TxnDate as PurchaseDate, InvoiceLine.RefNumber as InvRef, InvoiceLine.TxnDate as SoldDate, {fn CONVERT(InvoiceLine.TxnDate, SQL_DATE)} - {fn CONVERT(BillItemLine.TxnDate, SQL_DATE)} as DaysHeld From BillItemLine NOSYNC, InvoiceLine NOSYNC where BillItemLine.ItemLIneItemRefListID = InvoiceLine.InvoiceLineItemRefListID and InvoiceLine.TxnDate &gt;= BillItemLine.TxnDate<br /><br /> </span></p>
<p align="center">&nbsp;<img src="//support.flexquarters.com/esupport/newimages/Easiest/step1.png" alt="" /></p>
<p>To filter results by account, use the query below.<br /><br />SELECT Item.ParentRefFullName as ParentItem, AVG({fn CONVERT(InvoiceLine.TxnDate, SQL_DATE)} - {fn CONVERT(BillItemLine.TxnDate, SQL_DATE)}) as AvgDaysHeld FROM BillItemLine NOSYNC, Item NOSYNC, InvoiceLine NOSYNC WHERE BillItemLine.ItemLineItemRefListID = Item.listed and BillItemLine.ItemLIneItemRefListID = InvoiceLine.InvoiceLineItemRefListID and BillItemLine.TxnDate &gt;= {d'2007-01-01'} and InvoiceLine.TxnDate &gt;= BillItemLine.TxnDate GROUP BY Item.ParentRefFullName<br /><br /></p>
<p align="center">&nbsp;<img src="//support.flexquarters.com/esupport/newimages/Easiest/step2.png" alt="" /></p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - QuickBooks Dashboards, Java, JDBC - ODBC]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2847]]></link>
<guid isPermaLink="false"><![CDATA[fdf1bc5669e8ff5ba45d02fded729feb]]></guid>
<pubDate><![CDATA[Thu, 10 Nov 2016 06:38:51 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[Note: The JDBC-ODBC bridge driver was removed in Java 8, preventing ODBC drivers from being usable in newer versions of Java or other Java-based applications.
Refer:&nbsp;Oracle JDBC-ODBC Bridge
 Troubleshooting - QuickBooks Dashboards, Java, JDBC - ODB...]]></description>
<content:encoded><![CDATA[<p><span style="color: #000000; font-family: Arial,Helvetica,sans-serif;"><strong><span style="color: #ff0000;">Note</span></strong><span style="color: #ff0000;">:</span></span> <strong>The JDBC-ODBC bridge driver was removed in Java 8, preventing ODBC drivers from being usable in newer versions of Java or other Java-based applications.</strong></p>
<p>Refer:&nbsp;<a href="http://docs.oracle.com/javase/7/docs/technotes/guides/jdbc/bridge.html" target="_blank">Oracle JDBC-ODBC Bridge</a></p>
<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - QuickBooks Dashboards, Java, JDBC - ODBC </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;">I am evaluating the QODBC driver for a client who wants to create a dashboard using QuickBooks data. I am trying to use the JDBC ODBC bridge. <br /><br />As you see, the dashboard has multiple charts and queries with drills. I can add queries one by one, and they work fine, but when I do a dashboard refresh, only the first portlet to fire returns the rows, whereas the remaining portlets either return an error or do not return any rows. <br /><br />Also, is there a time-out in the QuickBooks connection? I noticed that if I let the connection remain idle, i.e., I switch to some application and return after, say, 10-15 minutes to the dashboard, and then try to refresh a query, the application crashes with a Java HOTSPOT error. <br /><br />Any idea how to resolve the above situation?</span>&nbsp;</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;">There's no actual QODBC connection time-out. I often have QuickBooks and a QODBC connection running for days. However, browser-based and threaded interfaces will have their time-outs. These time-outs require you to add QODBC disconnect and reconnect routines within your code or script. You will also need to use an STA (single-threaded-apartment) threading model, which your COM components may rely upon when returning calls. </span></p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - CreditCardInfoCreditCardNumber returns ******1234]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2846]]></link>
<guid isPermaLink="false"><![CDATA[eb9fc349601c69352c859c1faa287874]]></guid>
<pubDate><![CDATA[Thu, 10 Nov 2016 06:25:23 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[Troubleshooting - CreditCardInfoCreditCardNumber returns ******1234 
Problem Description:
This used to work, and I have no idea why it now blinds all reads of the CreditCardInfoCreditCardNumber field in the Customer table. I previously used QODBC to tra...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">Troubleshooting - CreditCardInfoCreditCardNumber returns ******1234 </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;">This used to work, and I have no idea why it now blinds all reads of the CreditCardInfoCreditCardNumber field in the Customer table. <br /><br />I previously used QODBC to transfer an entire QuickBooks 2006 Canadian company into a new QuickBooks USA 2008 file. I had no problem reading the actual credit card number from an MS Access application using an ADO connection at that time. Now, when trying to read from the QuickBooks USA 2008 company or the latest one. I either get NULLS in this field, or the information is blended with the Asterix characters, as in the subject above (the same happens using the supplied QODBC Test Tool application). This depends on what optimizer flags I&nbsp;use (VERIFY, NOOPTIMIZE, etc.) I haven't found a combination that gets me the whole credit card number. <br /><br />Before you ask why I need this, it's because we do our credit card billing through the Authorize.net gateway, and I don't want to have to maintain a separate store of CC information for security reasons. <br /><br />What happened? <br /><br /></span></p>
<p align="center">&nbsp;<img src="https://support.flexquarters.com/esupport/newimages/2846/Q1.png" alt="" /></p>
<p><span style="font-family: Arial,Helvetica,sans-serif;">&nbsp;<br /></span></p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;"> Sorry, but Intuit no longer allows the full credit card number to be seen using QuickBooks 2008 USA Edition and the QBXML SDK v7.0. The API is changing the Credit Card to "xxxxxxxxxxxx1234", not QODBC. </span></p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - Creating PO using Alpha Five basic scripting not working correctly]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2845]]></link>
<guid isPermaLink="false"><![CDATA[4b29fa4efe4fb7bc667c7b301b74d52d]]></guid>
<pubDate><![CDATA[Thu, 10 Nov 2016 06:19:43 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - Creating a PO using Alpha Five basic scripting is not working correctly 
Problem Description:
I am using Alpha 5 version 10.5 basic scripting to export our data to QuickBooks Enterprise 2016.I have successfully exported our customer a...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - Creating a PO using Alpha Five basic scripting is not working correctly </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;">I am using Alpha 5 version 10.5 basic scripting to export our data to QuickBooks Enterprise 2016.<br /><br />I have successfully exported our customer and inventory data without any issues. All data looks complete and is fully functional.<br /><br />My problem is exporting our Supplier Orders. Following your tutorial on&nbsp;<a href="http://support.flexquarters.com/esupport/index.php?/Default/Knowledgebase/Article/View/1138/50/how-to-create-a-purchase-order-using-qodbc" target="_blank">How to create a Purchase Order using QODBC </a><br /><br />It will not work correctly. It creates the PO in QuickBooks. However, it will only add the last line item to the PO. I am using the FQSaveToCache field set to 1 for all lines except the final, which is set to 0 and will only write the last line. <br /><br />When I generate the SQL code from my A5 basic script to a text file and copy/paste the SQL code into Alpha 5's SQL command window, I get the same results, and only the last line item is written to the PO. When I paste it into the <strong>QODBC&nbsp;Test Tool</strong> program, it works correctly, generating the PO with all line items as expected.<br /><br />These are SQL lines generated from A5.<br /><br />INSERT INTO PurchaseOrderLine (VendorRefListID, RefNumber, PurchaseOrderLineItemRefListID, PurchaseOrderLineQuantity, FQSaveToCache) VALUES ('80000172-1402174943', '14731', '80004374-1474850327', 10, 1)<br /><br />INSERT INTO PurchaseOrderLine (VendorRefListID, RefNumber, PurchaseOrderLineItemRefListID, PurchaseOrderLineQuantity, FQSaveToCache) VALUES ('80000172-1402174943', '14731', '8000435E-1474850314', 10, 1)<br /><br />INSERT INTO PurchaseOrderLine (VendorRefListID, RefNumber, PurchaseOrderLineItemRefListID, PurchaseOrderLineQuantity, FQSaveToCache) VALUES ('80000172-1402174943', '14731', '8000437A-1474850332', 10, 0)</span>&nbsp;</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;">I think your connection is dropping during insertion &amp; due to this issue. So please verify the same &amp; test again. So please verify the same &amp; test again. Please ensure that you are executing all queries in the current connection. If the connection is reset, all lines will not be inserted.</span></p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - How to create PriceLevelPerItem &amp; PriceLevelFixedPercentage using QODBC]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2844]]></link>
<guid isPermaLink="false"><![CDATA[6f1d0705c91c2145201df18a1a0c7345]]></guid>
<pubDate><![CDATA[Thu, 10 Nov 2016 06:13:22 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - How to create PriceLevelPerItem &amp; PriceLevelFixedPercentage&nbsp;using QODBC 
Problem Description:
How to create PriceLevelPerItem &amp; PriceLevelFixedPercentage using QODBC.
Solution:
To create a new PriceLevel and PriceLevelP...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - How to create PriceLevelPerItem &amp; PriceLevelFixedPercentage&nbsp;using QODBC </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;">How to create PriceLevelPerItem &amp; PriceLevelFixedPercentage using QODBC.<br /></span></p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;">To create a new PriceLevel and PriceLevelPerItem item (at the same time), use the below query:<br /><br />INSERT INTO PriceLevelPerItem ("Name," "IsActive," "PriceLevelPerItemItemRefListID," "PriceLevelPerItemCustomPrice") values ('Door Bell Special,' 1,'8C0003-1044564690',20)<br /><br />Where the Name 'Door Bell Special' is the new PriceLevel.<br /> </span></p>
<p align="center">&nbsp;<img src="https://support.flexquarters.com/esupport/newimages/2844/Q1.png" alt="" /></p>
<p><strong><br /> <strong>Note:</strong>&nbsp;</strong>&nbsp;<a href="https://support.flexquarters.com/esupport/index.php?/Default/Knowledgebase/Article/View/2981" target="_blank">QODBC Support Wizard</a> is used only to test QODBC SQL queries and is not a development tool.</p>
<p><span style="color: #990000; font-family: Arial, Helvetica, sans-serif;"><strong>Result in QuickBooks </strong></span></p>
<p>The result looks like this in QuickBooks 2022:</p>
<p align="center">&nbsp;<img src="https://support.flexquarters.com/esupport/newimages/2844/Q2.png" alt="" /></p>
<p>To add another item to the 'Door Bell Special' price level, you must first determine the ListID for the PriceLevel you want to add. This can be found by doing the following:<br /> <br />SELECT ListID, Name, PriceLevelType from PriceLevel where Name='Door Bell Special'<br /><br /></p>
<p align="center">&nbsp;<img src="https://support.flexquarters.com/esupport/newimages/2844/Q3.png" alt="" /></p>
<p>To add another item to this PriceLevel, we use the following query:<br /><br />INSERT INTO PriceLevelPerItem ("ListID," "IsActive," "PriceLevelPerItemItemRefListID," "PriceLevelPerItemCustomPrice") values ('80000006-1481799565', 1,'250003-1044564090',150) <br /><br /></p>
<p align="center">&nbsp;<img src="https://support.flexquarters.com/esupport/newimages/2844/Q4.png" alt="" /></p>
<p><span style="color: #990000; font-family: Arial, Helvetica, sans-serif;"><strong>Result in QuickBooks </strong></span></p>
<p>The result looks like this in QuickBooks 2022:</p>
<p align="center">&nbsp;<img src="https://support.flexquarters.com/esupport/newimages/2844/Q5.png" alt="" /></p>
<p><span style="font-family: Arial,Helvetica,sans-serif;">To create a new PriceLevelFixedPercentage, use the query below:<br /><br />Insert into PriceLevel (Name, PriceLevelFixedPercentage) values ('40.000', -40)<br /><br /><br /> </span></p>
<p align="center">&nbsp;<img src="https://support.flexquarters.com/esupport/newimages/2844/Q6.png" alt="" /></p>
<p><span style="color: #990000; font-family: Arial, Helvetica, sans-serif;"><strong>Result in QuickBooks </strong></span></p>
<p>The result looks like this in QuickBooks 2022:</p>
<p align="center">&nbsp;<img src="https://support.flexquarters.com/esupport/newimages/2844/Q7.png" alt="" /></p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] How to insert SalesOrderLine item to an existing SalesOrder]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2843]]></link>
<guid isPermaLink="false"><![CDATA[bf2fb7d1825a1df3ca308ad0bf48591e]]></guid>
<pubDate><![CDATA[Wed, 09 Nov 2016 12:42:15 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ How to insert a SalesOrderLine item into an existing SalesOrder
Problem Description:
 I routinely create new sales orders with queries similar to this:INSERT INTO SalesOrderLine ("CustomerRefListID," "RefNumber," "SalesOrderLineItemRefListID," "SalesOr...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> How to insert a SalesOrderLine item into an existing SalesOrder</span></h2>
<h3><span style="color: #0066cc; font-family: Arial,Helvetica,sans-serif;">Problem Description:</span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;"> I routinely create new sales orders with queries similar to this:<br /><br />INSERT INTO SalesOrderLine ("CustomerRefListID," "RefNumber," "SalesOrderLineItemRefListID," "SalesOrderLineDesc," "SalesOrderLineQuantity," "SalesOrderLineRate," "SalesOrderLineAmount," "FQSaveToCache") <br />VALUES ('CustomerRefListID,' 'RefNumber,' '80000095-1351453721', 'spark generator,' 50, 2.39, 119.5, [0 for the last line, 1 for other lines])<br /><br />Can I insert a new line into an EXISTING sales order with a similar query?<br /><br />If so, what value do I use for FQSaveToCache?<br /> </span></p>
<h3><span style="color: #0066cc; font-family: Arial,Helvetica,sans-serif;">Solution: </span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;">You need to add the field TxnID to the insert query. The field "TxnID" is available in the insert query only when the TxnID value points to an existing entity in QuickBooks. </span></p>
<p><span style="font-family: Arial,Helvetica,sans-serif;">If you want to add a line item record to an existing SalesOrder, please remove header information fields like "CustomerRefListID" and "RefNumber" from your query.</span></p>
<p><span style="font-family: Arial,Helvetica,sans-serif;">Here is an example of adding one line item to an existing SalesOrder "4912-1071512816" in our test company file:</span></p>
<p><span style="font-family: Arial,Helvetica,sans-serif;">INSERT INTO SalesOrderLine (TxnID, SalesOrderLineItemRefListID, SalesOrderLineDesc, SalesOrderLineQuantity, SalesOrderLineRate, SalesOrderLineAmount) VALUES ('4912-1071512816', '160000-933272656', '4m Steel Ladder', 1.00000, 1.00000, 150.00) </span></p>
<p><span style="font-family: Arial,Helvetica,sans-serif;">Please notice that all values in the query come from our test company file. Please replace them using your value when running it on your end. And you can also add other line item columns to this query according to your request. <br /><br />Note: The FQSaveToCache does support existing SalesOrder queries. <br /> </span></p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - Getting ODBC-Call failed error in MS Access when Opening ReceivePaymentToDeposit table]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2840]]></link>
<guid isPermaLink="false"><![CDATA[a78482ce76496fcf49085f2190e675b4]]></guid>
<pubDate><![CDATA[Wed, 26 Oct 2016 11:22:26 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[Troubleshooting - Getting ODBC-Call failed error in MS Access when opening the ReceivePaymentToDeposit table 
Problem Description:
I am trying to link the ReceivePaymentToDeposit table through the linked table in MS Access. I can connect the ReceivePaym...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;">Troubleshooting - Getting ODBC-Call failed error in MS Access when opening the ReceivePaymentToDeposit table </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;">I am trying to link the ReceivePaymentToDeposit table through the linked table in MS Access. I can connect the ReceivePaymentToDeposit table. But I am getting an ODBC-Call failed error in MS Access when opening the ReceivePaymentToDeposit linked table. <br /><br /> <img style="display: block; margin-left: auto; margin-right: auto;" src="//support.flexquarters.com/esupport/newimages/CallFailed/step1.png" alt="" border="0" /><br /> <br /> <img style="display: block; margin-left: auto; margin-right: auto;" src="//support.flexquarters.com/esupport/newimages/CallFailed/step2.png" alt="" border="0" /><br /> </span></p>
<p>&nbsp;</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;"> When you open the linked table from MS Access at that time, MS Access is passing queries like "SELECT "TxnID,"..., "UnusedCredits" FROM "ReceivePayment" where "TxnID" = ?" to QODBC. <br /><br />QODBC passes one-by-one XML requests to QuickBooks SDK using the TxnID of the table, and QODBC gets all records one by one from QuickBooks SDK.<br /><br />The "ReceivePaymentToDeposit" table does not support the TxnID filter in QuickBooks SDK &amp; this issue happened.<br /><br />Using the Pass-Through query in MS Access would be best as a workaround. <br /><br />You can find pass through from: MS Access &gt;&gt; Create tab &gt;&gt; Query Design &gt;&gt; <br /><br /> <img style="display: block; margin-left: auto; margin-right: auto;" src="//support.flexquarters.com/esupport/newimages/CallFailed/step3.png" alt="" border="0" /><br /> <br />Select Pass-Through &gt;&gt; Write query &gt;&gt; Execute query using Run button<br /> <br /> <img style="display: block; margin-left: auto; margin-right: auto;" src="//support.flexquarters.com/esupport/newimages/CallFailed/step4.png" alt="" border="0" /><br /> <br />Select DSN, click "OK," &amp; execute the query.<br /> <br /> <img style="display: block; margin-left: auto; margin-right: auto;" src="//support.flexquarters.com/esupport/newimages/CallFailed/step5.png" alt="" border="0" /><br /> <br />You will get the result.<br /><br /> <img style="display: block; margin-left: auto; margin-right: auto;" src="//support.flexquarters.com/esupport/newimages/CallFailed/step6.png" alt="" border="0" /><br /> <br /> </span></p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] How to connect and use FoxPro with QODBC]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2838]]></link>
<guid isPermaLink="false"><![CDATA[d0bb8259d8fe3c7df4554dab9d7da3c9]]></guid>
<pubDate><![CDATA[Wed, 19 Oct 2016 07:22:18 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[How to connect and use FoxPro with QODBC
Open Visual FoxPro from the Start Menu:

&nbsp;
FoxPro started:

&nbsp;
Open "Command Window" from Windows Menu:

&nbsp;
"Command Window" Opened. You can execute FoxPro commands from the "Command Window."...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial, Helvetica, sans-serif;">How to connect and use FoxPro with QODBC</span></h2>
<p>Open Visual FoxPro from the Start Menu:</p>
<p><img style="display: block; margin-left: auto; margin-right: auto;" src="//support.flexquarters.com/esupport/newimages/FoxPro/step1.png" alt="" /></p>
<p>&nbsp;</p>
<p>FoxPro started:</p>
<p><img style="display: block; margin-left: auto; margin-right: auto;" src="//support.flexquarters.com/esupport/newimages/FoxPro/step2.png" alt="" /></p>
<p>&nbsp;</p>
<p>Open "Command Window" from Windows Menu:</p>
<p><img style="display: block; margin-left: auto; margin-right: auto;" src="//support.flexquarters.com/esupport/newimages/FoxPro/step3.png" alt="" /></p>
<p>&nbsp;</p>
<p>"Command Window" Opened. You can execute FoxPro commands from the "Command Window."</p>
<p>You need to write FoxPro commands in the "Command Window" &amp; execute them by hitting the&nbsp;<strong>"Enter"</strong> key on the keyboard.</p>
<p><img style="display: block; margin-left: auto; margin-right: auto;" src="//support.flexquarters.com/esupport/newimages/FoxPro/step4.png" alt="" /></p>
<p>&nbsp;</p>
<p>First, we will connect to QuickBooks from FoxPro using the SQLCONNECT command. Write the command below &amp; hit the&nbsp;<strong>"Enter"</strong> key on the keyboard.</p>
<p><strong>CN = SQLCONNECT('QuickBooks Data', '', '')</strong></p>
<p><img style="display: block; margin-left: auto; margin-right: auto;" src="//support.flexquarters.com/esupport/newimages/FoxPro/step5.png" alt="" /></p>
<p>&nbsp;</p>
<p>Now, we will execute the query to QuickBooks from FoxPro using the SQLEXEC command. Write the command below &amp; hit the&nbsp;<strong>"Enter"</strong> key on the keyboard.</p>
<p><strong>SQLEXEC(CN , "SELECT TOP 10 Name FROM Customer","csrCust")</strong></p>
<p><img style="display: block; margin-left: auto; margin-right: auto;" src="//support.flexquarters.com/esupport/newimages/FoxPro/step6.png" alt="" /></p>
<p><br /> <strong>Note:</strong> The above query is for testing purposes only. You can change the query as per your requirement.</p>
<p>Now, we display query results in FoxPro using the BROWSE command. Write the command below &amp; hit the&nbsp;<strong>"Enter"</strong> key on the keyboard.</p>
<p><strong>BROWSE</strong></p>
<p><img style="display: block; margin-left: auto; margin-right: auto;" src="//support.flexquarters.com/esupport/newimages/FoxPro/step7.png" alt="" /></p>
<p>&nbsp;</p>
<p>Query Result:</p>
<p><img style="display: block; margin-left: auto; margin-right: auto;" src="//support.flexquarters.com/esupport/newimages/FoxPro/step8.png" alt="" /></p>
<p>&nbsp;</p>
<p>You can disconnect the connection to QuickBooks from FoxPro using the SQLDISCONNECT command. Write the command below &amp; hit the&nbsp;<strong>"Enter"</strong> key on the keyboard.</p>
<p><strong>SQLDISCONNECT(CN)</strong></p>
<p><img style="display: block; margin-left: auto; margin-right: auto;" src="//support.flexquarters.com/esupport/newimages/FoxPro/step9.png" alt="" /></p>
<p>&nbsp;</p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-Desktop] Troubleshooting - How can we select Invoices for payment from BillToPay table using QODBC]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2836]]></link>
<guid isPermaLink="false"><![CDATA[6e0e24295e8a86282cb559b860416812]]></guid>
<pubDate><![CDATA[Fri, 14 Oct 2016 06:52:05 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - How can we select Invoices for payment from the BillToPay table using QODBC 
Problem Description:
 In the BillToPay Table - How can we select invoices for payment using QODBC?We would like to have the Checkmark Selected for the respec...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - How can we select Invoices for payment from the BillToPay table using QODBC </span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;"> In the BillToPay Table - How can we select invoices for payment using QODBC?<br /><br />We would like to have the Checkmark Selected for the respective invoice.<br /></span></p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;">You will have to insert BillPaymentCheckLine, marking the Bill as Paid.<br /><br />First, you need to query the BillToPay table for the bill you want to pay.<br /><br />For Example:<br /><br />SELECT * FROM BillToPay where BillToPayRefNumber='7893'<br /><br /> <img style="display: block; margin-left: auto; margin-right: auto;" src="//support.flexquarters.com/esupport/newimages/BillToPay/step1.png" alt="" border="0" /><br /><br />Bill in QuickBooks UI.<br /><br /> <img style="display: block; margin-left: auto; margin-right: auto;" src="//support.flexquarters.com/esupport/newimages/BillToPay/step2.png" alt="" border="0" /><br /><br /> </span></p>
<p><span style="font-family: Arial,Helvetica,sans-serif;">It would be best if you used the query below to mark the Bill as Paid. <br /><br />INSERT INTO BillPaymentCheckLine (PayeeEntityRefListID, APAccountRefListID, BankAccountRefListID, RefNumber, AppliedToTxnTxnID, AppliedToTxnPaymentAmount) VALUES('90000-933272656', 'C0000-933270541', '20000-933270541', '7893', 'DF4-933785047', 1250)<br /><br /> <img style="display: block; margin-left: auto; margin-right: auto;" src="//support.flexquarters.com/esupport/newimages/BillToPay/step3.png" alt="" border="0" /><br /><br /> <strong>Related Data Description</strong><br /><br />PayeeEntityRefListID = '90000-933272656' (Required) VendorRefListID from Bill table.<br /><br />APAccountRefListID = 'C0000-933270541' (Required) APAccountRefListID from Bill table.<br /><br />BankAccountRefListID = '20000-933270541' (Required) <br /><br />RefNumber = '7893' (RefNumber of Bill) <br /><br />AppliedToTxnTxnID = 'DF4-933785047' (TxnID from Bill Table)<br /><br />AppliedToTxnPaymentAmount = 1250 (AmountDue from Bill Table) <br /><br />Bill paid in QuickBooks.<br /><br /> <img style="display: block; margin-left: auto; margin-right: auto;" src="//support.flexquarters.com/esupport/newimages/BillToPay/step4.png" alt="" border="0" /><br /></span></p>
<p><strong>Apply Vendor Credit to the Bill using Bill Payment.</strong></p>
<p><span style="font-family: Arial,Helvetica,sans-serif;">Assuming you already have a VendorCredit.</span></p>
<p>Get the TxnID of the Vendor Credit.</p>
<p>Select * from VendorCredit where&nbsp;VendorRefFullName='YourVendorFullName'</p>
<p>&nbsp;</p>
<p>Use the following SQL statement to apply Vendor Credit.</p>
<p>&nbsp;</p>
<p>INSERT INTO BillPaymentCheckLine (PayeeEntityRefListID,<br /> APAccountRefListID,<br /> BankAccountRefListID,<br /> RefNumber,<br /> AppliedToTxnTxnID,<br /> AppliedToTxnPaymentAmount,<br /> AppliedToTxnSetCreditCreditTxnID,<br /> AppliedToTxnSetCreditAppliedAmount<br /> ) VALUES ('90000-933272656',<br /> '80000020-1730714268',<br /> '20000-933270541',<br /> '7893',<br /> '8DA-1763656441',<br /> 21,<br /> '8F0-1764072149',<br /> 21)</p>
<p>&nbsp;</p>
<p><strong>Related Data Description</strong><br /><br />PayeeEntityRefListID = '90000-933272656' (Required) VendorRefListID from Bill table.<br /><br />APAccountRefListID = '80000020-1730714268' (Required) APAccountRefListID from Bill table.<br /><br />BankAccountRefListID = '20000-933270541' (Required)<br /><br />RefNumber = '7893' (RefNumber of Bill)<br /><br />AppliedToTxnTxnID = 'DF4-933785047' (TxnID from Bill Table)<br /><br />AppliedToTxnPaymentAmount = 21 (AmountDue from Bill Table)</p>
<p>AppliedToTxnSetCreditCreditTxnID= '8F0-1764072149' (TxnID from VendorCredit Table)<br /><br />AppliedToTxnSetCreditAppliedAmount=&nbsp;21&nbsp;(Amount you want to adjust towards Vendor Credit available from&nbsp;VendorCredit Table)</p>
<p><span style="font-family: Arial,Helvetica,sans-serif;"><br /> </span></p>]]></content:encoded>
</item>
<item>
<title><![CDATA[[QODBC-ALL] Troubleshooting - MS Access displays &quot;#Deleted&quot; in every field]]></title>
<link><![CDATA[https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2832]]></link>
<guid isPermaLink="false"><![CDATA[2bc8ae25856bc2a6a1333d1331a3b7a6]]></guid>
<pubDate><![CDATA[Wed, 21 Sep 2016 11:36:34 +0000]]></pubDate>
<dc:creator />
<description><![CDATA[ Troubleshooting - MS Access displays "#Deleted" in every field
Problem Description:
Using QuickBooks Accountant, QODBC, and MS Access Linked table. Sometimes, e.g., at present, working with the InventoryAdjustment table, a table view or query returns t...]]></description>
<content:encoded><![CDATA[<h2><span style="color: #6633cc; font-family: Arial,Helvetica,sans-serif;"> Troubleshooting - MS Access displays "#Deleted" in every field</span></h2>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Problem Description:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;">Using QuickBooks Accountant, QODBC, and MS Access Linked table. <br /><br />Sometimes, e.g., at present, working with the InventoryAdjustment table, a table view or query returns the right number of records, but many of them have "#Deleted" in every field. On this occasion, which is typical, I have nine records full of "#Deleted," then a normal, valid record, then four more full of "#Deleted," then one more valid record. A total of 15 records, which is what QuickBooks shows me. I can't see anything significantly different from the ones that appear.&nbsp;</span>&nbsp;</p>
<h3><span style="font-family: Arial,Helvetica,sans-serif;"><span style="color: #0066cc;">Solution:</span></span></h3>
<p><span style="font-family: Arial,Helvetica,sans-serif;">To resolve this, you need to relink your linked table in MS Access. <br /><br />Refer: <a href="http://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2679" target="_blank">How to Re-Link QuickBooks Data in MS Access using QODBC</a> </span></p>]]></content:encoded>
</item>
</channel>
</rss>