I just downloaded and installed the Expense Request for Non-Inventory Items (v3.8.0) from the Marketplace. When I tried to install it, I got the following error and the package failed to install.
function poreq.transferitems(integer, integer) does not exist
It turns out there is an error in transferitems.sql. The first line reads:
DROP FUNCTION poreq.transferitems(integer, integer) CASCADE;
This does not work for new installations. I had to change it to:
DROP FUNCTION IF EXISTS poreq.transferitems(integer, integer) CASCADE;
I also learned that even though it has the .gz file extension, the file is actual just a tar archive and does not appear to be zipped.
Here are the steps I used to modify the file:
tar -xf extensions_ExpenseRequests.gz
chmod +w transferitems.sql
chmod -w transferitems.sql
tar -uf extensions_ExpenseRequests.gz ExpenseRequests/