2009/10/30

How to text-wrap transaction column fields on printouts

A recurring problem people have is, when printing a transaction, Netsuite will truncate long fields rather than text-wrap them on multiple lines.

Surprisingly, there's no way to tell Netsuite you want a certain field to text-wrap.

However, if you follow these little steps, you'll be able to create yourself a text-wrapping field to display any column you want.

Create a Custom Transaction Column field.
a. Type = Text Area
b. Store Value = uncheck
c. (optional) Display Type = Disabled
d. Default Value = to_char({fieldid}) where fieldid is the internal id of the field you want to text-wrap


Once you've created this field, you have a bit more work to do -

Customize any transaction form that you want to print
a. Add the field you just created to Printing Fields
b. For this to work, the original field MUST still be checked in Printing Fields... but you don't want it to appear, since you replaced it with your super-duper text wrapping field. So in the Width of the original field, type "0.0001"



Ta-da! Text wrapping. The only ugly part remaining is that on the user interface, users will see both fields. Unfortunately, there's no way to hide the field in the GUI in a way that won't stop it from correctly showing on printouts.

2009/10/20

Searching on Transactions affecting Inventory

It can often occur that you want to run a Saved Search to find all transactions affecting inventory, like when maybe you want to see the consumption history of a certain item, or whatever.

In most accounts, this can be trickier than it sounds. Your first reaction may be to simply add a criteria on Transaction Type and select the transactions that normally affect inventory - Inventory Adjustments, Transfers, Item Fulfillments, etc.

But (and if you didn't know this, this is important to know) there can often be times where you booked an Invoice, or a Bill, or a Credit Memo without first creating the SO/PO/RA and then the corresponding Item Fulfillment or Item Receipt (i.e., a "standalone" Invoice/Bill/Credit Memo).

This means that your Invoice/Bill/Credit Memo is affecting inventory. So ok, you may think, you need to add these Transaction Types to your search. Nope, wrong. Cause then you'll be double-counting your inventory impact in cases where you have a Fulfillment AND an Invoice. Ok, so then filter on just Invoices? Wrong again, then you'll be missing out on all the Transactions that have been fulfilled but not invoiced. What's a boy (or girl) to do?

Well, you can follow this neat tip. Add the following criteria:
Is Posting = True
Account = Inventory Asset (make sure here to actually select the Inventory Asset account you're using, as per your Chart of Account. There may be more than 1, which is alright).

This way, you are 100% certain to grab only transactions affecting your inventory, because you're looking at the inventory asset account. That doesn't lie. If something goes in or out of your inventory, it will definitely have an impact on your inventory asset. And by saying Is Posting, you are basically weeding out Sales Orders and Purchase Orders and other non-impacting stuff.

So a quick example of a complete search using these criteria might be:

Transaction Search
CRITERIA
Is Posting = True
Account = Inventory Asset

COLUMNS
Date
Type
Number
Item
Quantity
Item Rate
Amount

Enjoy!

2009/10/05

Bins and Your Inventory

Bins in NetSuite can be seen as sub-locations within a location. In other words, each bin is specific to a location and can independently contain inventory. However, one confusing point about the Bin feature is that you can still receive inventory straight to your location instead of into a bin. I call this the "floor inventory", i.e. instead of being in a bin, your inventory is just on the floor. Let me explain:

Imagine your company keeps track of stock at both your store and your warehouse:


Now, imagine you have 3 distinct areas in each of your locations where you stock your items. These are called bins in NetSuite. Let's call our Store bins "A", "B" and "C" and our Warehouse bins "D", "E" and "F".


The bins specified on the Item Receipt will determine where your inventory quantity will increase, and similarly, the bins specified on the Item Fulfillment will decrease the inventory quantity from that bin.

Now here's the critical point: as I mentioned earlier you can also receive inventory into the location without specifying a bin. If you leave the Bin Numbers field empty on the Item Receipt or Fulfillment, the inventory will be increased or reduced from the "floor" of the location. The following item, for example, has a quantity on hand of 5 on the floor of the Store location and none in its bins:


And here's the same item, but with an extra 3 items received in bin A of the Store location:
Notice how the location quantity is now 8? That's because the Location amounts specified on the Item Record are based off the sum of the Location's Bin quantities and the Location's "floor" quantity.

If you keep that in mind, you can easily calculate your "floor" quantity for a location by subtracting the bin quantities from the displayed On Hand quantity. In this case, 8-3=5 which means the "floor" quantity for the Store is 5.

Generally, if you're using bins it's better to try and avoid using the "floor" quantity feature and put everything in bins, just to minimize any confusion like the one mentioned above.