Getting the Most from Lantica's Sesame Database Manager
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . June 23, 2017  10:07 am. PST
T H E  Q U A R T E R L Y  G U I D E  F O R  S E S A M E  U S E R S / D E V E L O P E R S
2 0 1 7
Vol. 14, No. 2
(New issues posted quarterly by 5th of month)

(Insider password required)

Previous Issue Summaries

April 2017 issue summary. . .

Check it. Grab it. Import it ― A Comprehensive Sesame FTP Download Program
Most commercial websites today have fill-in forms of one kind or another. They might also have private/restricted forms their outside sales or service people can fill in and submit from their mobile devices. But that submitted data is stored on a web server that might be 20 or 2,000 miles away from your company. How do you funnel it down to your Sesame database and simultaneously clear the file on the web site? We point the way.

Include/Exclude Options When Copying Table Subform Content
A company had Proposals and Orders databases. When a proposal was accepted by the customer, it was converted to a new order by copying it to Orders. Problem was, some of the lineitems in the table subform needed to be excluded in the copy operation. So employees needed an easy way to pick which lineitems not to copy.

Cook Up a Custom Password Box
A company was looking to restrict access to certain sensitive reports, procedures and form elements without having to add overall security to the application. They wanted a password field at the bottom of the form. When supplied, command buttons and other form elements would appear, enabling the special tasks to then be performed. The masking you normally see with password boxes didn’t come up, but we wondered how that might be done. Sample application included in this month's download file.

Require Password for Record Deletes
There are a variety of ways to prevent records from being deleted from a database. This one hides the delete options on the commands panel, disables the F3 Delete key, and prompts for a special admin password before a record can be zapped. But it does something more by secretly copying the contents of the record to an external text file on the server just prior to the delete so that the data is restorable. As a bonus, the file also reveals when exactly the record was deleted, who deleted it, and from what PC.

Son of WordMerge
The 300-line WordMerge add-in that comes with Sesame might seem like overkill when all you need to merge are a few fields — perhaps along with some subform data — to a certain document. Using just a fraction of the WordMerge code, our savvy little substitute creates a merge data source file (just like WordMerge with header and data rows) then opens the doc with all the data neatly merged in.

When FileWriteLn Beats FileOverWrite ― The Strange Case of PDF995
You might think that either method for writing out text files yields the same result. But if you're using PDF995 on a 64-bit machine to generate a pdf995.ini file, you could be mistaken. Windows' security sees them as two very different operations. A new file (FileOverWrite) being written outside of the Sesame domain is seen as potentially more dangerous to the system than a file being modified with FileWriteLn.

_______________You ask. We answer.

  • Reports vs. Database Design — Why you should design a database with the kinds of reports you'll need in mind.

  • Update Multiple Records with a Click  — Reducing a complex update procedure to a single step.

  • Truly Secure Your Data — Steps you can take to keep prying eyes away from where they ought not to be.

  • Make Updating Sesame Easier — How to apply a Sesame upgrade to  all the PC's in your company in one fell swoop.

  • Set Sesame Screen Sizes — An informative tutorial on getting just the right size Sesame window  particularly on the newer portable PC's.

  • Convert Non-Y2K Dates with an Export/Import — Back to the future.

_______________Technical tidbits you can use today

  • Images in Table View — All it takes is a sesame.ini file setting. 

  • Checkboxes — Only One State Matters ― A checkbox is either on or off, right? Sesame checkboxes have three states, but only one matters.

  • Hide Form Elements Geographically@ContainedElementList ― what's that? It's a  convenient and efficient way to work with groups of form elements. Wholesale vs. retail.

  • Find the Latest Date in a Table Subform — This might not be as easy as you suppose.

  • Make Report Breaks Easier to See — Subtotals In a lengthy report can be hard to spot. This enhancement makes them really stand out.

  • Son of WordMerge 2 — (See Son of WordMerge above) This version merges multiple database records, is runnable from anywhere in the application, and can be adapted to include subform data.


(Insider password

How to Copy Programming Code from
Inside Sesame to paste into Sesame's Program Editor

You can copy programming code from Inside Sesame Acrobat PDFs and paste it into your Sesame Program Editor.

Select the code with your mouse, then Right click on the selected text and choose Copy to copy it to the clipboard. (If the program continues to another page, do that page separately.)

In Sesame's Program Editor, select Edit | Paste (or press Ctrl-V) to paste the copied code into the appropriate LE/Event slot.

Inside Sesame programming examples may inadvertently contain styled quotes. If these are present, you'll get a lexical error when you Test the program. You'll need to replace these styled quotes with the plain straight quotes the Program Editor requires.

Sesame doesn't like slanted (styled) quotes: “SomeValue″
Sesame likes plain straight quote marks: "SomeValue"

To convert any styled quotes to plain quotes in the Program Editor:

  1. Copy one styled opening quote to the clipboard.
  2. Open the Program Editor’s Search | Replace box.
  3. Paste (Ctrl-V) the styled opening quote into the Find field.
  4. Type a plain quote (") in the Replace field.
  5. Click Replace All.

Follow the same steps to replace any styled closing quotes with plain quotes then retest the program.