Rob's TIMSS Blog

My discoveries and ramblings of TIMSS/Personify.

Tuesday, June 27, 2006

Tax on shipping charges in DC & MD

I asked our lawyers if we were required to charge tax on shipping charges in DC & MD (states where we have a presence). Here is what they determined for our organization:

District of Columbia

According to DC ST § 47-2002, sales tax is imposed on the gross receipts from sales. Gross receipts are defined in DC ST § 47-2001(h) as the total amount of sales prices for retail sales. According to DC ST § 47-2001(p)(2)(E), the term "sales price" does not include "transportation charges separately stated, if the transportation occurs after the sale of the property is made." This information was confirmed with Rochelle Washington (202-442-6636) of the DC Office of Tax and Revenue on June 27, 2006. Based upon this information, shipping charges are not subject to DC sales tax so long as the charges are separately itemized. Since our shipping is a combination of both shipping & handling, tax must be charged.

Maryland

According to the Maryland Sales and Use Tax Facts (July 2006-June 2007) , "separately stated shipping charges are not taxable; however, handling charges are a part of the taxable price." So long as shipping and handling charges are not combined, Maryland tax does not need to be applied to shipping charges. Since our shipping is a combination of both shipping & handling, tax must be charged.

Applies to: TIMSS5 & TIMSS6

Monday, June 26, 2006

Processing Bounce-Backs

If your association is like mine, you send out large blast emails... which means you get a lot of bounce backs. Wouldn't it be nice if there was a piece of software that could help you process all the bounce backs? Well there is: G-Lock Email Processor.


This software will monitor an inbox and using rules you define, allow you to group similar types of bounce backs and let you get the email addresses they came from. Then you can update these email addresses in TIMSS.

Yes, this is the second product I've mentioned from this company (see Email Address Verification), and no they aren't paying me.

Applies to: TIMSS5 & TIMSS6

Monday, June 19, 2006

TIMSS 6: Error Messages

Have you ever received an error message in TIMSS that had a spelling or grammar error? How about wishing you could add more info to an error message to make it clearer for your users? Well in TIMSS 6 you can. Error messages are stored in tables starting with APP_MESSAGE.

For example:

can be found in APP_MESSAGE_TEXT as message 51 in the APP subsystem. And


can be found in APP_MESSAGE as message_id 18 in the CUS subsystem.

Please note that it's not obvious where the message is used so you might not want to change it too much. Also TMAR may update the message in a future release and overwrite your changes. Hopefully you will report your change to TIMSSCare and they will make the change to the message in the base product.

Applies to: TIMSS6

Monday, June 12, 2006

TIMSS 6: POS Sales Tax

Sales tax can be automatically charged by TIMSS. In general, sales tax will be charged if three things are true: 1) a tax is setup for the location of the sale; 2) the product has a tax defined; and 3) the customer is taxable.

Usually the location is where the product is shipped to, however if you are selling to the customer in-person (i.e. at your bookstore) you will charge the tax of the locality you are currently in.

TIMSS handles this by letting you setup a POS (point of sale) batch. On the top right of FAR001 you can make this batch a POS batch by checking the box and putting in the country, state, and warehouse.



To charge tax in this locality, you will need to setup a tax for it.


Checking the POS box (I've changed my caption to POS Only) at the bottom right of ORD199 tells TIMSS that this tax should only be used on POS batches. So in the figures above, my conference bookstore is in PA and I will charge 7% tax on POS sales there.

I changed the caption (using extender) to make it clearer. If I only want to charge this tax for POS batches then I check the box, but in the case where my bookstore is at my headquarters in DC, I'd need to charge POS tax on sales there, as well as orders shipped to DC (since my business has a presence in DC I need to collect DC sales tax). Thus I would NOT check the POS box for DC so that I can use it for both regular sales where products are shipped to DC and POS sales where they are bought at my bookstore in DC.

Applies to: TIMSS6

Tuesday, June 06, 2006

TIMSS 6: More Extender Security & Help

Here's some info from release notes about setting up field level security in TIMSS 6:

Field Level Security
You can set security for individual fields using Extender using the existing security codes under the SEC_PRIVILEGE type or create new ones. Use the SetObjectSecurity method and the ApplyField Security function to implement field level security.

Steps in setting up Field Level Security

  1. Define an Extender field on TIMSS Screen.
  2. Submit the Extender batch.
  3. Create a new code under SEC_PRIVILEGE app type.
  4. Assign appropriate privilege to user groups.
  5. Open Extender screen again and invoke the MyForm.SetObjectSecurity method under appropriate event in the script.
  6. Submit the Extender batch and deploy the Extender dll (...EXT.dll).

SetObjectSecurity

You can use public method SetObjectSecurity to enable/disable any object (e.g., textbox, drop down, button, and grid) using Extender.
This method takes the following six parameters (two required and four optional)

  1. pstrName - Name of the Control for which you setup the security.
  2. pstrSecurityOperation - This is the custom security that needs to be setup.
  3. strApplication (Optional) - The screen/application name on which the field exists.
  4. pstrTablLevel1 (Optional) - The tab level 1 of the screen/application
  5. pstrTablLevel2 (Optional) - The tab level 2 of the screen/application
  6. pstrTablLevel3 (Optional) - The tab level 3 of the screen/application

ApplyFieldSecurity

You can use public function ApplyFieldSecurity to make a field non-editable and masked (like the SSN field on Individual screen) using Extender. This method takes following six parameters (three required and three optional)

  1. pstrField - This parameter is used to pass the Textbox Value for which you setup the security
  2. pstrSecurityOperation - This will be the custom security that needs to be setup.
  3. pstrApplication - The screen/application name on which the field exists.
  4. pstrMaskChar (Optional) - The character that is used for masking the chars of the field. The default is #
  5. pintNumberOfDisplayChar (Optional) - The number of characters in the text field that you do not want to Mask. The default is 0 (Zero)
  6. pstrDirection (Optional) - Which direction you want to mask. If you want to show the first set of characters and mask the rest then you pass the parameter as First. Otherwise pass End. The default is End.

    Note: This method works only for the Textbox type of controls which have string data.

Also if want to see the Extender Scripting Help document, when you have the Scripting Editor screen open, click on the blue question mark on the top right of the screen.

Applies to: TIMSS6