Quickbooks Pro 2021 access from remote computer - c#

I have a WinForms (QuickBooks SDK) application that saves some bills to QuickBooks. We are currently running both the application and QuickBooks on the same server. I am trying to move the application to a different computer located on the same LAN but am getting errors when connecting. Do both the company file and the application need to be on the same computer to access and make changes to the company file. We are not trying to use Quickbooks web connector.

Related

How to get hostname or unique identification of computers?

We have an app (ASP.Net 3.1 Core MVC,SQL Server) that is deployed internally (network) wherein we can only access the app by using AnyConnect VPN. It is also given that we have a remote connection in an onsite computer.
Can you give me an idea or suggestions on how to identify the client if he/she is working at home or at the office. I tried searching here in SO on how to get Hostname , it works on the physically connected to the network computer at the office but it does not work when the app is accessed externally (through VPN).
Any suggestions would be greatly appreciated !

Register integrated app in QuickBooks

I am trying to get an app to show up in the list of Integrated Applications in QB. Don't know what I'm doing wrong. My code is as follows, on a button click event:
QBSessionManager sessionManager = new QBSessionManager();
sessionManager.OpenConnection("", "QB Test");
sessionManager.BeginSession(#"PATH TO QBW FILE", ENOpenMode.omDontCare);
when I run this without QB open, I get the error:
This application is unable to log into this QuickBooks company data
file automatically; the QuickBooks Administrator can grant permission
through the Integrated Applications preferences.
With QB open, I get:
This application has not accessed this QuickBooks company data file
before. Only the QuickBooks Administrator can grant permission to
access a QuickBooks company file for the first time.
With QB open, running the application as administrator, a new QB window opens and I get:
The application trying to connect to QuickBooks is not supported while multiple instances of QuickBooks are running.
I never see my application listed in the integrated applications list of programs for me to allow it permissions
So:
Have QB sdk installed
Have QB admin account
Have other applications such as misys listed in integrated applications
Am very confused
Working with QuickBooks can be a pain, so here are my 2 cents based on my experience:
Make sure you are building application in x86
Use OpenConnection2 instead of OpenConnection as OpenConnection method is deprecated
OpenConnection2("", "My Company", ENConnectionType.ctLocalQBD);
Run QuickBooks in a single user mode
If you have users setup for QuickBooks, log in as an admin user in QuickBooks
Run your application in normal mode. If you are running your application in an elevated mode (Run as Administrator) make sure QuickBooks is also running in elevated mode.
That's all and your application should be able to connect to QB without any hiccups.
I have seen this occur when using QuickBooks Enterprise edition in Windows, when my application was running using elevated permissions, but QuickBooks was opened without elevated permissions. This happened in my case because my application was considered as being used by a different Windows user, and so QuickBooks attempted to open a new instance instead of prompting me to allow access.
I assume you are using Windows, as, to my recollection QuickBooks for Mac has a much more limited integration surface.
I would check to ensure that neither your application nor QuickBooks are running as Windows admin, and make sure you are logged into QuickBooks as a QuickBooks administrator when requesting access for the first time. If successful, you should be prompted with a modal in QuickBooks requesting access.
First time running your app, open Quickbooks, log in as admin, and change to single user mode. Then run your code and you will get the popup in QB to authorize the application.

How to find if QuickBooks desktop application opened or not against any company file through C#?

I have a C# application communicate with my QuickBooks Desktop application's company file to perform CRUD (employee) operation in both C# and QuickBooks applications.
Here, I need to check whether QuickBooks desktop application is open or not and prompt valid message box for users that "You need to open QuickBooks application before perform CURD operation". Since, as per standard provided by QuickBooks SDK, need to open the QuickBooks before perform CRUD. Without to do so, my application thrown COM object error.
I have used QuickBooks SDK 13.0, Microsoft Visual Studio 13 (.Net Framework 4.5), C#.
Please help to resolve this. Thanks in advance.

Application Designing guide line for interaction between Win & Web application

our company has website which has been developed by asp.net web form and hosted in shared location in ORCSWEB company. web site has a specific page from where people upload their CV. when a new CV is uploaded then few entry stored in database and cv file stored in folder where our web site hosted. database is also maintain at ORCSWEB end.
i have developed a win service which run in our office and it periodically query the remote database for new CV. if found any then it will download that CV file in local machine and as well as remote cv data from remote db to local db and update a filed called isDownloaded=1 in remote db as a result next time that same records will not be queried or checked.
the whole web part and win service part working fine but now our IT head want to change in web & win service logic bit.
he wants that when any new candidate upload their CV through our site then a notification will be send to our win service after 5 minute from web apps. after getting notification from web apps then win service will download the cv.
now i am not being able to thing how to design our web apps which can send some notification directly to our win service which is running in our office because there is no physical connection or accessibility between two pc where our win service & web apps are running. our win service is running in our private network and web apps is hosted in another company machine.
some told me this can be achieve through WCF but did not guide me how to develop this kind of bridge between win service & web apps through which communication will be possible.
i know lots of experienced & scholar developer always monitor this site and that is why i like to ask them how this problem can be sorted. what logic i need to use to send notification from our web apps to win service.
so please guide me with all possible way to develop a system which solve our purpose. discuss all possible way like wcf or anything else which can be use to develop apps which enable me to achieve our goal. looking for elaborate discussion and guidance. if possible give me few sample code & links which give me idea to write code for our situation. thanks

How to get Client PC Printer name using C#.net

I am currently developing a web application to print data directly to the client's printer. The application works well in my pc but when I post the application to our web server, instead of retrieving the printer list in client's pc, the application is trying to look for printers that are installed in the server machine.
I developed my application using C# and I am using System.Drawing.Printing.PrinterSettings.InstalledPrinters to retrieve the printer list I realised it only trying to retrieve printer installed in the local machine. The PC is not connected to any network.
Is there any way to get the list of installed printer in the client computer?
System.Drawing.Printing.PrinterSettings.InstalledPrinters will give the list of printers where the application is hosted and i am afraid there is nothing like getting clients printer lists in ASP.Net.

Categories