我有一个小型 C# 控制台程序,可以从 quickbooks 中检索项目列表,并且我试图弄清楚如何将该数据公开给 Microsoft Access。它是 XML 格式。
我想实时检索数据,因为只要 Access 调用它,只需大约一秒钟即可获取数据。我正在使用 Access 2003 和 VS 2010。
如果有一种方法可以使用 VBA 执行此操作,那么它也可以正常工作。我已经可以使用 VBA 获取 XML 数据,但我不知道如何从那里开始。
这是我在 C# 中使用的代码:
public string DoQBQuery(XmlDocument doc)
{
bool sessionBegun = false;
bool connectionOpen = false;
RequestProcessor2 rp = null;
string ticket = "";
try
{
//Create the Request Processor object
rp = new RequestProcessor2();
//Connect to QuickBooks and begin a session
rp.OpenConnection2("", "QB Transaction Item Retriever", QBXMLRPConnectionType.localQBD);
connectionOpen = true;
ticket = rp.BeginSession("", QBFileMode.qbFileOpenDoNotCare);
sessionBegun = true;
//Send the request and get the response from QuickBooks
string responseStr = rp.ProcessRequest(ticket, doc.OuterXml);
//End the session and close the connection to QuickBooks
rp.EndSession(ticket);
sessionBegun = false;
rp.CloseConnection();
connectionOpen = false;
return responseStr;
}
catch (Exception e)
{
MessageBox.Show(e.Message, "Error");
if (sessionBegun)
rp.EndSession(ticket);
if (connectionOpen)
rp.CloseConnection();
throw;
}
}