Delete Quickbooks Journal Entries QBXML - quickbooks

Is there a way to programatically delete Journal Entries in Quickbooks desktop (Enterprise Ed 2013) using an API like QBXML? I understand that the usual practice would be a compensating entry, but this use case calls for deleting the JE. I see that JournalEntryModRq allows you to modify it, but not delete it. It can be deleted using the UI, so it must be possible, yes?
We are using the QB Web Connector, any other options if not via QBXML?

You can use TxnDel to delete an transaction-type object using qbXML.
Here's some example (from this QuickBooks wiki, specifically this page):
<?xml version="1.0" encoding="utf-8"?>
<?qbxml version="11.0"?>
<QBXML>
<QBXMLMsgsRq onError="stopOnError">
<TxnDelRq>
<TxnDelType>JournalEntry</TxnDelType>
<TxnID>ABCD-1234</TxnID>
</TxnDelRq>
</QBXMLMsgsRq>
</QBXML>

Related

How to display build warnings in TFS alert email

The TFS alert email for completed builds contains a list of build errors.
We are using an on-premises TFS 2018 server (a.k.a. Azure DevOps Server).
However, I would like to see the list of build warnings, too.
I already read the numerous posts on modifying BuildCompletedEvent.xsl to tweak the appearance of the email and that all works well. Using the hack below to get the full XML input I found out that it does in fact not contain the build warnings.
Is there a way to modify/hack the TFS service that creates the XML input for the alert emails?
The information about this on the internet is a mash of bits and pieces for XAML-builds, pre-TFS-2010, post-TFS2010 servers, and Azure devops server/services with lots of dead links and loose ends.
I feel like I basically had to reimplement almost the entire email alerting stuff of the TFS server if I went down the road to create a custom subscriber for the BuildCompletedEvent event (a.k.a. BuildCompletionEvent).
So is there a reasonably economic, (i.e. simple) way to get this little extra information into the TFS alert emails?
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<textarea>
<xsl:copy-of select="/" />
</textarea>
</xsl:template>
</xsl:stylesheet>

Error declaring <ehcache:annotation-driven cache-manager="ehCacheManager" /> bean

At work we use the Spring (or rather Google) ehcache manager. Oddly, I'm getting an error in Spring STS that my coworkers, also using Spring STS and using the exact same code, do not get. The following line in my pom.xml file is marked as an error (or a "problem" according to Spring STS).
<ehcache:annotation-driven cache-manager="ehCacheManager" />
The reason given is this:
The matching wildcard is strict, but no declaration can be found for element 'ehcache:annotation-driven'.
In case it might be helpful, here are the schema declarations at the top of my pom.xml file.
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:beans="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:ehcache="http://ehcache-spring-annotations.googlecode.com/svn/schema/ehcache-spring"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:util="http://www.springframework.org/schema/util"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-2.5.xsd
http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache.xsd
http://ehcache-spring-annotations.googlecode.com/svn/schema/ehcache-spring http://ehcache-spring-annotations.googlecode.com/svn/schema/ehcache-spring/ehcache-spring-1.1.xsd">
Both Spring STS and my specific project/workspace are using Java 8 as a compiler and runtime environment. So I don't think that's an issue. I also did a project refresh, a Maven update, and a mvn clean install.
I did some research and looked at this question as well as this one. The conclusion seems to be that one of my schemas is no longer hosted and so it cannot figure out what <ehcache:annotation-driven cache-manager="ehCacheManager"/> means. It seems that the http://ehcache-spring-annotations.googlecode.com/svn/schema/ehcache-spring/ehcache-spring-1.1.xsd schema is missing, which can be confirmed if you simply try to visit the URL.
The comments on this question suggest that I avoid the Google ehcache and use the Spring one instead. How should I go about this? Ideally I would like to avoid changing the schemas that we use, since after all it works for my co-workers. But maybe that's because they were able to pull from the Google ehcache schema while it was still being hosted. Is it really necessary to change from the Google schema to the Spring schema, and if so how should I implement this in my POM file?
Try this
<cache:annotation-driven cache-manager="ehCacheManager" />

How to install JV Twitter module on Joomla 1.5?

It is said elsewhere, that JV Twitter module is compatible with Joomla 1.5.
Unfortunately, the archive I got does not install.
The archive content is follows:
And the error message is "Error! Could not find a Joomla! XML setup file in the package.":
The content of XML file starts with:
<?xml version="1.0" encoding="utf-8"?>
<extension type="module" version="2.5" method="upgrade">
<name>JV Twitter</name>
<author>JoomlaVi! Project</author>
<creationDate>May 2014</creationDate>
<copyright>Copyright (C) JoomlaVi. All rights reserved</copyright>
<license>http://www.gnu.org/licenseses/gpl-2.0.html GNU/GPL or later</license>
<authorEmail>info#joomlavi.com</authorEmail>
<authorUrl>www.joomlavi.com</authorUrl>
<version>4.0.8</version>
<description>JV Twitter</description>
<files>
<filename module="mod_jvtwitter">mod_jvtwitter.php</filename>
<filename>helpers.php</filename>
<filename>jvtwitter.php</filename>
<filename>index.html</filename>
<folder>assets</folder>
<folder>libs</folder>
<folder>tmpl</folder>
<folder>fields</folder>
<folder>languages</folder>
</files>
<languages folder="languages">
<language tag="en-GB">en-GB.mod_jvtwitter.ini</language>
<language tag="en-GB">en-GB.mod_jvtwitter.sys.ini</language>
</languages>
<config>
and so on.
Does this mean that actually package is not compatible with 1.5? Or it is still possible to do something?
I've looked at the developer website and this module is only compatible with Joomla 2.5 and 3.x. It will not work for Joomla 1.5 as the XML structure and content is different in the 2 versions, so you will need to find an alternative.
I would strong suggest you think about migrating to Joomla 3.x very soon. It's more secure and has more features. You may have already noticed that not many developers still support Joomla 1.5

Odata URI service troubleshooting

I have an OData URI generated by a consumer desktop application like so
http://localhost:32702/TBC/Projects/15f1360adb2e4008921b9b5bb849ae78/
Entering this into my browser I can view the atom XML and see collections that should be available
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<service xmlns="http://www.w3.org/2007/app" xmlns:app="http://www.w3.org/2007/app" xmlns:atom="http://www.w3.org/2005/Atom" xml:base="http://localhost:32702/TBC/Projects/15f1360adb2e4008921b9b5bb849ae78/">
<workspace>
<atom:title>Default</atom:title>
<collection href="FeatureAttributes">
<atom:title>FeatureAttributes</atom:title>
</collection> -<collection href="Points">
<atom:title>Points</atom:title>
</collection> -<collection href="TotalStations">
<atom:title>TotalStations</atom:title>
</collection> -<collection href="Vectors">
<atom:title>Vectors</atom:title>
</collection>
</workspace>
</service>
So I then change my browser URI to include the Points collection or the Vectors collection
http://localhost:32702/TBC/Projects/15f1360adb2e4008921b9b5bb849ae78/Points
And it only returns the current date for each item I was expecting, no actual data. The count of items, however is accurate. I was hoping to be able to use this in a LinqPad or VB.Net query application, but I can't even get the browser queries to work. Is it me or is there an issue with the service? I've tried the URI in LinqPAD and in a test project with WCF Data Services and when I test the same URI I get a (500) Internal Server Error.
The vendor is not providing any support, so I was hoping someone here could give me some troubleshooting steps to show where the issue is at.
Edit:
I modified IE options > Content > Feed Settings by unchecking "Turn on feed reading view"
This allowed me to see the data from the returned entity collection. I can now try to use WebRequest to consume the XML data in a .net application.
Adding $metadata to the URI in the browser yields "Website cannot display the page". Which leads me to guess that only feeds are exposed and no services. I'm not sure if this is possible.
I'm still unable to use this URI in LinqPad or in visual studio using Add Service Reference. VS returns error "An error occurred while attempting to find service at URI.
I'm not sure about LinqPad, but "Add service reference" in Visual Studio expects a link to your $metadata endpoint or the service document (i.e., the first query in your question). You can access the Points collection using both of those tools as a secondary step.
I'm not sure why your $metadata endpoint is not showing up though. If you right-click and "view source", do you see the xml document there?

NLog doen't work on IIS

I added NLog to my project. Following the instructions I created NLog.config.
<?xml version="1.0" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<targets>
<target name="file" xsi:type="File"
layout="${longdate} ${logger} ${message}"
fileName="${basedir}/${shortdate}.log" />
</targets>
<rules>
<logger name="*" minlevel="Debug" writeTo="file" />
</rules>
</nlog>
and then just log something.
var logger = LogManager.GetCurrentClassLogger();
logger.Info("xxxx");
With the developer web server it work fine, but when I publish the app to IIS, no logs are created.
Edit website permissions in IIS and under security tab give IIS_IUSRS group full privileges.
In Application, Pools find the pool your application is using and set some specific user.
The image below describes the procedure step by step:
Does NLog.config have the property "Copy to Output Directory" set as "Copy always"?
One of the problem is IIS doesn't have permission to write in log file. If you are sure you have NLog.Config in your release and the log file is still not generating then give full access to your IIS application pool.
You can add "throwExceptions="true" to your nlog config to see what is the problem. Should be something like this:
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.nlog-project.org/schemas/NLog.xsd NLog.xsd"
autoReload="true"
throwExceptions="true"
internalLogLevel="Off" internalLogFile="c:\temp\nlog-internal.log">
After you are sure about it is access problem you can do like below for giving access to your application pool.
First find your application pool (in case you don't know) :
On IIS manager right click your web page name.
On Manage Website tab click Advanced Settings.
You will see Application pool name on top.
Give full access to your application pool :
On IIS manager right click your web page name.
Click Edit Permissions.
Select Security Tab on opened window.
Click Edit button
Select your application pool name. (If your application pool is not in the list then you have to add it)
And at down select full access and than select ok and leave.

Resources