Paypal and Ebay - Multiple Omissions

Paypal problem:

Paypal wants me to link a bank account. I’ve given Paypal a credit card number to work with, but they still want a bank account.

OK. I have a bank account. I gave it to Paypal. Paypal says, “That account is already in use.” Why yes, it is. It is my joint checking account with my wife. Paypal seems to think that I’ll have another bank account somewhere, but I’m old fashioned and I have only a joint account. Paypal won’t let my wife and me give it the same checking account.

OK. I’ll just skip this step and use Paypal without a bank account. Except that after I charged $5000 over the years, Paypal says that I’ve reached the limit that I can charge without a bank number, and it demands a bank number. But it won’t accept my bank number…

OK. To heck with that account. I’ll just create a new Paypal account. It will be good for another $5000. Done.

eBay problem:

I changed my Paypal info to the new account at eBay. I’ve been happily buying things and that account has been getting charged. Then I sold an old MacBook. eBay sent the funds to the OLD Paypal account. That’s not good. I’m not charging anything to that account. Paypal almost got a free $450.

I just need to change the Paypal account that eBay uses for my selling. Oops. eBay tells me I have only one Paypal account. The new account. I called them. They say I can’t possibly have two Paypal accounts tied to my eBay account. But I have an email from them that shows that they credited my old Paypal account.

Here’s what I’m going to try:

Login to the OLD Paypal account.

Delete all of the authorized billers. (Including an old eBay link.)

Go to the eBay Account screen and delete the NEW Paypal account. (It is the only account they’ll show me.)

Via the eBay Account screen, re-add the new Paypal account.

I don’t sell on eBay often, so I may have to wait a year before I see if this works. If it doesn’t, they’ll credit my old Paypal account. If I can’t fix it, I’ll either have to keep the old Paypal account around, and REMEMBER to send the funds to my new account, or I can try deleting the old Paypal account, and see if eBay will say, “We can’t send you the money. Would you like us to fix that?”

If I do delete the old Paypal account, I need to try selling something CHEAP on eBay, to test out the fix.


UPDATE: Maybe this will work.

  1. Login to the OLD Paypal account.
    1. Choose Summary » Selling Tools » Seller Preferences.
    2. Aha! There is a connection to my eBay account here.
    3. Click the Update link, on the line with my eBay account name.
    4. Select the eBay account and press the Remove button
  2. Login to the NEW Paypal account.
    1. Choose Summary » Selling Tools » Seller Preferences.
    2. On the line where it says “Link my eBay ID to my PayPal account”, click Update.
    3. Press the Add button, and follow the process to add my eBay account.

Access Error Declaring db as Database

Microsoft Access sometimes throws a compile error, “Expected user-defined type, not project” if you do something like:

Dim db As Database

It doesn’t recognize “Database” as the built-in type that it is. This is because of an incredible stupidity in Access. When you create a new Access database, it creates a ‘project,’ and it names that project “Database”. So when you attempt to use the built-in type “Database”, it thinks you’re referring to the project.

You have to rename the project to something besides Database (and don’t name it Integer or String!)

  • In the left-side frame of the VBA window, you’ll see “Project - Database” near the top.
  • Under that, you’ll see “Database (your-file-name-here)”.
  • Click on “Database (your-file-name-here)”.
  • Farther down the page you’ll see “(Name) Database”.
  • Change that to “(Name) Anything-besides-Database”.

Checklists

I’m dropping Carbon Fin Outliner because the desktop (“Online”) version doesn’t have folders/tags, and I have too many lists for a linear list of all of them. I need to manage some checklists and outlines. Candidate applications include:

  • Checkvist
  • Circus Ponies Notebook
  • OmniOutliner
  • NeO

Thoughts:

  • Notebook/Checkvist doesn’t support Spotlight. NeO and OO do.
  • With Checkvist, I’d have to handle backup/exports because I’m not trusting them to stay in business for as long as I need my lists.
    • Oh, wait. I see a mention of “backups to the cloud” for paid users. It might do what I want.
    • “Enable Dropbox integration to save the latest Checkvist backup (zipped OPML files) to your Dropbox folder.” That looks good.
    • If it works, there is also https://github.com/lasseebert/checkvist_backup
  • If I use OmniOutliner or Notebook or NeO, I can’t access it from my work PC. NeO doesn’t even have an iPad app. None of them except Checkvist are iPhone capable.
  • If I use Notebook, I could maybe use it for project management for my non-work projects, in addition to checklists. Evernote might be better for projects because it is available via web browser. (Evernote does not do real checklists and outlines - just indents and manual checkboxes.)
  • Notebook doesn’t let you attach notes to an outline item (it does let you attach a link to someplace else). OmniOutliner does. I think NeO does. Checkvist does via the “nn” keystroke.
  • NeO doc is poor. OO and Notebook have plenty of doc and user forums.
  • OO supports AppleScript. I don’t have a use case for AppleScript just now, but opens up possibilities.
    • It isn’t AppleScript, but Checkvist supports:
      • Python: https://code.google.com/p/checkvist-python/
      • Python: https://github.com/ChewingPencils/checkvist-python
      • … and you can hit it with Ruby or similar languages - http://checkvist.tumblr.com/post/187654104/openapi-javascript-ruby-example
  • I really want checkboxes, and not strike-through like Checkvist does.

So what are the cases where Mac-only is a problem?

  • I work from home, so I’ll have access to my Mac during the work day. If I have to go back to an office building, checklist access is the least of my problems.
  • It is handy to carry around a packing-for-travel list on my iPhone. I could print one.
  • Is there a case where I’m out and about, and I need a list? Debugging a silent SOTA activation? CPR? Car won’t start? Packing from a visit to return home.

They all seem to do OPML. In theory, I ought to be able to export/import to move between them. Fidelity may be poor.

Conclusion:

  • I really want the option of cross-device use. I’ll miss AppleScript. I’ll miss the eye-appeal of Notebook. But without cross-device use, I could run into dead-in-the-water situations where I can’t use the checklists. But I won’t use Checkvist without auto-backup, and that’s $35 a year. For now, I’ll run with Notebook, because I own it. If it stops working for me, I’ll look at why, and see which of the other solutions would address the gap.

CarbonFin Outliner Is a Great App But a Poor Application

CarbonFin Outliner (or maybe Carbon Fin Outliner) is a great iOS app. The web version is deficient. It just doesn’t have some of the key features that the iOS apps have. I was using it for some checklists, but once I got up to about 10 checklists, I really needed to organize them into folders (or with tags). “CarbonFin does tags.” OK. Great. I’d prefer folders, but I’m old fashioned. Let’s use tags.

Can’t do that with the web application (Carbon Fin Outliner Online). It doesn’t support tags/folders.

<sarcasm> Yes, I could use my iPad at work. I’m already using a PC with 2 screens, a MacBook. I could add an iPad with a keyboard and have 3 computers. I just need to add another desk. Oops. Out of room. Need to add another office. Just let me run to my other office to check my checklists. I’ll be right back.

</sarcasm>

Microsoft Access Is Stupid About Joins

UPDATE:

  • “Parameters” (and “Parameter”) are reserved words in Access. I had been using a table named “Parameters”. Changing to “[Parameters]” (surrounding the table name with square braces) seems to have helped. Access was complaining about the join expression when the real problem was an illegal table name. Ultimately, I renamed my table to “Parms”.
  • Better solution – Instead of doing the join, use:
    • Select * from a where exists (select 1 from parms where a.currentdate between parms.startdate and parms.enddate)
      • Note that Access typically is very slow for nested queries, but this one runs very quickly.

This is an interesting, non-intuitive technique, so I’d like to explore it a bit further, to cement it into my mind. To me, I want records from A where the A record meets the criteria. The nested query asks for Parms records that meet the criteria.

There are a couple of cases where I use JOIN: One is to ‘extend’ records (make them wider) and the other is to ‘select’ records (reduce the set of records). When using join-as-select, you can replace it with a subquery that tests for the existence of records in the table you are using to ‘reduce’ your primary table. (After all, this is really what the join does, if you return no fields from the parms table.)


Microsoft Access sometimes says “JOIN expression not supported” when you try to join on an expression more complex than an equijoin. I often use a Parameters table, with a single record, to choose the range of data that other queries return. This allows me to create views/queries that return ranges of data where the range is data driven (instead of hard-coding the range criteria).

Basically, I want to say “select data between these start/end dates” and put the dates in a Parameter table.

Access has a nervous breakdown when my join looks like:

SELECT * FROM SourceTable INNER JOIN ParameterTable ON SourceTable.TimeStamp > ParameterTable.StartDate and SourceTable.TimeStamp < DayAfterEndDate;

My solution is to add a new virtual field to the query, which returns true/false if the record meets the criteria. Then I can avoid the problematic join.

i.e. If it won’t join, and you’re using a join to select records, define a function to return true for desired records and select those records where the function returns true.

Since we’ll be calling this function a lot, we’ll want to cache the DB lookup. Since we might come along and alter the values in Parameters, we want our cache to time-out quickly, so that the query picks up new values when we enter them.

' Is the value between the Parameter start and end dates
Function BetweenParameterStartEnd(ByVal t As Variant) As Boolean
	Dim db As Database
	Dim rs As Recordset
	Static StartDate As Date
	Static EndDate As Date
	Static CachedAt As Date
	Dim s As String
	
	BetweenParameterGenericStartEnd = False
	
	' IF the cache is old, re-cache it.
	If DateDiff("s", CachedAt, Now()) > 60 Then
		CachedAt = Now
		Set db = CurrentDb
		s = "select StartDate, DayAfterEnd from Parameters"
		CachedAt = Now
		Set rs = db.OpenRecordset(s, dbOpenSnapshot, dbReadOnly)
		rs.MoveLast: rs.MoveFirst
		If rs.RecordCount <> 1 Then
			MsgBox "The Parameters table should always have 1 record in it."
			Stop
			End
		End If
		GenericStartDate = rs("StartDate")
		GenericEndDate = rs("DayAfterEnd")
	End If
	
	If t >= StartDate And t < EndDate Then
		BetweenParameterStartEnd = True
	End If
	
End Function

Fiddler Fixes PPPIndia Calendar Sync for Outlook

I was helping someone set up PPPIndia’s Calendar Sync for Outlook. He was getting a check-your-proxy-settings error, but his proxy was set up correctly. We also tried it without a proxy, after moving his PC to a location that would require no proxy. Same error.

So we tried Fiddler, to see what was failing. Calendar Sync worked without any problems. Then we removed Fiddler. It still worked!

Learnings (some of which may not apply to Calendar Sync):

  • Fiddler buffers requests. This can change the timing. If the server has narrow time-out tolerances, Fiddler (or any other proxy) might fix this.
  • Fiddler may be closing connections after queries. If your client is exceeding the maximum-connections-per-client for your server, it can fix this.
  • The Calendar Sync “proxy” problem shows up before you’ve picked (and saved) your Google calendar in Calendar Sync setup. Once you’ve picked your calendar, it seems to be able to work properly.
    • So if you get this problem: Tell Calendar Sync to use your system proxy, run Fiddler, tell Calendar Sync to login to Google, pick your Google calendar in Calendar Sync, save your setup, set your proxy the way you really want it, quit Fiddler and Calendar Sync, restart Calendar Sync, and you should be good to go.
    • This worked for me TWICE.
    • This is only relevant for the portable version of Calendar Sync (as of January 2015) because the installed version does not support the use of a proxy server (and Fiddler is a proxy server).

Synchronizing Work with Google with IOS

Assorted notes:

  • http://www.pppindia.com/calendar-sync/index.html - free version syncs 30 days; $10. Has a “portable” edition.
    • I see a problem report: “Failed in 1 way sync O->G to delete a single event within recurring appointment”
    • A little “hacky” setting up recurring sync with OAuth.
    • Says it works through proxy, but it does not go through my work proxy nor my home proxy. Sync is OK without a proxy.
      • I edited the config file and changed to and that didn't seem to help.
      • Then I turned on Fiddler to debug, and loaded my Google Calendars and chose the one I wanted successfully. After that, Sync seems to run OK, even when Fiddler isn’t running.
  • http://www.fieldstonsoftware.com/software/gsyncit3/ - $20
  • http://sourceforge.net/projects/googlesyncmod/ a.k.a. http://googlesyncmod.sourceforge.net/ - open source.
    • There is a time tolerance of 2 minutes to cope with time differences on Server and Client side, therefore please wait at least 2-5 minutes, before you Change an appointment, contact or note and resync afterwards
  • CompanionLink says Sync Outlook calendar, contacts, notes, tasks, journal, and contact photos. $50
    • Some Amazon users complain of duplicate events
    • They have been around since the days of Palm, so they have a successful business.
  • https://outlookgooglecalendarsync.codeplex.com - open source. Reportedly does not require admin. One way (in either direction); NOT bidirectional and not both uni-directions at the same time. Crashed on startup (I think this was because I had an open calendar reminder, blocking the Outlook GUI. Or maybe I cured it by moving it to a directory with a short path.)

  • http://technology.s-sheth.com/publish-outlook-calendar-to-gcal - one way, Outlook to Google, 90 days only. Zero software to install on your work PC.

  • Sync Reminders with Google Tasks: http://tasket.mobi/faq - free
  • http://sync2.com/ - $40
  • SyncMyCal - I own a copy of this. 32 and 64-bit support (separate download pages). Discontinued.
  • http://www.gooout.net/index2.php $40
    • Deal-killer: “Google Calendar is always the master calendar. It’s only possible to delete or update items via Google calendar.”
  • EVO Collaborator for Outlook - $30. I’m not certain this will work. Google does CalDav. This adds CalDav to Outlook. It should work.
  • http://www.bynari.net/products-page/product-category/bynari-webdav-collaborator/ - $30

Remove Birthday Calendar From Google Calendar

Google wants to show you the birthdays of every Contact and every Circle you know. To remove / delete /unsubscribe / hide:

  • Calendar » Settings » Calendars tab > Browse Interesting Calendars » More tab

This used to work. “Birthdays” isn’t an Interesting calendar any longer.