Monday, July 2, 2012

Fishbowl Inventory Batch Print Packing Slip and Pick Report

As par of the productivity gains services that we offer recently we came across a problem where a warehouse personnel was as part of their shipping and handling routine in Fishbowl Inventory software had print 2 pieces of paper for each order (Packing List & Print Report). Each one of the reports took series of clicks and screens in order to produce final print - in total 16 clicks per order. Now count that on busy days there are about 600 orders and you get one seriously sore index finger.

So we took a deeper look at the process and came up with solution that would batch print entire order load for the day in just 5 clicks total. This report includes two individualized subreports "Packing List" and "Pick Report". There are several things that can cause pain points:

  1. make sure that you are producing and compiling report in the correct version of iReport Designer from Jasper Software. You can find correct corresponding versions to your Fishbowl Server here
  2. Make sure that your iReport Designer is installed on same server as the Fishbowl server and that it has all Fishbowl .jar files added  (by default this is installed C:\Program Files\Fishbowl\lib). For us installing iReport on separate box could not compile valid reports
  3. Master Batch reports "path" parameter should be empty "" and should be passed on to subreports as well as the "module" parameter
  4. We wanted 2 subreports for each order to be printed back to back so insert page break between two subreports
Lastly there is pretty good number of questions answered on Fishbowl forum & Fishbowl Wiki so I would start there if you have any questions first. Here is our final batch report appropriately called "Batch Pick Pack" (by the way our report has two optional parameters to constrain Order number range and may not be appropriate for your situation - they are Greater Than Order and Less Than Order).

Monday, June 4, 2012

wordpress mysqli class

So recently as it usually a client of ours come with a request for fresher looking website and blog based on wordpress. No big deal, we said we do those with our eyes closed. So after all the development has been finished and we were ready to push it to production server we hit a brick wall. Production server is running a legacy application on php 5 and mysql 4.1 with just mysqli module. So no big deal still - yum update blah blah and all set but not so fast. Server was running a legacy Fedora v1. Getting a push back from client on migration to cloud we had to improvise with mysqli and wordpress. So with two developers exploring options and playing around we finally hit the jackpot with mysqli wpdb class from wordpress's own repo at http://plugins.svn.wordpress.org/performance-testing/trunk/library/db.php and few additions (functions like db_version, tables, get_blog_prefix and class variable $ms_global_tables) to make it work with our version of wordpress (3.1+).

Keep in mind that you should place this file in wp-content folder under name db.php. If you get any errors about wpdb class cannot be re-declared than you know that original wp-includes/wp-db.php file is being loaded before your custom wp-content/db.php so you have two options:
  1. Overwrite contents of wp-includes/wp-db.php with that of wp-content/db.php
  2. Change wp-includes/load.php function require_wp_db() to load original wp-includes/wp-db.php ONLY if wp-content/db.php does not exist. End result:



Here is the final code:

Friday, October 7, 2011

Generate a valid 12 digit UPC number with PHP

As NEXTAG was complaining about random 8 digit product ID in the feed of one of our clients, we were urged by their feed debugger to use UPC-A code for that field.

As our clients products did not have UPC codes we put together this little function based on UPC-A description on wikipedia.


function UPC() {

$odd_sum = $even_sum = 0;

for ($i = 1; $i < 12; $i++) {
$digits[$i] = rand(0,9);
if($i % 2 == 0)
$even_sum += $digits[$i];
else
$odd_sum += $digits[$i];
}

$digits[$i] = 10 - ((3 * $odd_sum + $even_sum) % 10);

return implode('',$digits);
}

echo UPC();


Check this website to validate PHP generated UPC code

Wednesday, November 4, 2009

Zip files with PHP

After researching few different classes written in PHP that zip files and not necessarily extract files from zip archives I've come across the one that was able to handle multiple client platforms like Win XP, Linux, and MAC OS. It is called plczip and it is found at pclzip website. Other classes that I've tried offered similar functionalities but proved difficult to work with in WIN XP native zip extractor. Zip file format has several bits(flags) that unreadable by that native XP extractor so with pclzip class those issues got resolved.
Here is the list of the other classes researched:

zip class from red monkey
hasin zip class
zip class by joshua townsend

Friday, October 23, 2009

OBJ Leads Seminar

OBJ Lead Generation Seminar


ABOUT OBJ

• Part of the national network of papers and online portal
• UP 5% in circulation in 2007
• 99K weekly readers (paper comes out on Friday)
• Net worth 2M Annual income 233K read the paper 53 min a week, mostly C level people

Articles usually contain information about companies add new jobs and services and include company’s contact information
Different marketing ideas and strategies from local companies as they are implementing them currently to expand sales

Monthly reports on various trends and list of certain industry ranking

Occasional networking events, award ceremonies, and interactive ways of generation sales (calendar lists all these events)

On page 34 there is “BIZ digest” where you can send a press release about your company’s anniversary [FREE], if you’re promoting someone in company, if your opening new location, if you are partaking in a community effort, if you landed new big deal,
OBJ favors:
• breaking news with local businesses
• featured entrepreneurs
• learning from mistakes

Book of Lists is an annual publication containing list across variety of industries and trends

Wednesday, May 20, 2009

Send and receive emails on boost mobile

If you are looking to send and receive email on you boost mobile and have not had much luck here is a possible workaround.
RECEIVING:
In your email client options (Gmail, Yahoo, POP, IMAP) set forwarding of emails to: yournumber@myboostmobile.com [use 10 digit number with area code]. Now email will come to your cell as text messages.
SENDING:
In each email that you receive as text message you will see highlighted text of senders email - to reply simply click on that text and your done.

SEO Seminar at SBDC on 05/20/2009

SEO Seminar @ SBDC 05/20/2009


Organic Search Results

People are more likely to click on it because of its relevancy over paid results
You can only optimize for only one keyword phrase per page
More tedious
50% of users scan only top organic search results
72.3% of users feel that Google organic results are more relevant then the paid results
Conversion rates for organic results are 3 times higher then paid results


Site layout

Golden Triangle, F pattern
Easy navigation
Clutter free
Flash Compatibility – no search engine can completely index contents of its objects
Flash workaround - http://www.asual.com/swfaddress/


Keyword Research

Searched keywords could be derivatives of the actual terms used on you web page
Blogging – easy way to update your customers, it keeps robots coming back often, RSS feeds are important http://blogsearch.google.com/ping


Google PageRank

It is a scale on 1-10 on how important Google deems your site


Competitive Research

What elements competitors have in place that you don’t:
1. PR
2. Keywords
3. Elements


Easy Steps to help you rank

• Keyword research
• Put keywords in a title and on the page
• Add links to other pages on your site
• Submit your site to free local search directories like Yahoo and Google maps
• Get links back to your site from site with Google PageRank 3 or higher


Google Analytics

Visits
PageViews
Pages/Visits
Bounce Rates
Average time on site
New Visits