1996-2006 TSI: AdDept Client: Robinsons-May

May Co. department stores based in North Hollywood, CA. Continue reading

Robinsons-May was a chain of departments stores owned by the May Company. Its headquarters was in North Hollywood, CA. Most of its stores were in southern California, but eventually the advertising department in NoHo bought space and time for stores with various logos throughout the western states.

Rob-May’s headquarters was in the upper floors of this department store. It had the largest parking lot I had ever seen for one store, much more than needed.

TSI never pitched the AdDept system to the store’s advertising department. In 1996 the May Company decided to install AdDept in the department store divisions that were not already using it—Robinsons-May, Meier & Frank, Kaufmann’s, and Filene’s.These installations were quite different from the other systems that TSI had installed at May Co. divisions. They began with three days of rather intense sessions in TSI’s office in Enfield while the hardware was on order from IBM. We were teaching them about the system design of AdDept, and they were informing us about their policies and expectations for the system.

I later learned that the Northridge earthquake of 1994 had demolished the rest of the 25-acre Laurel Plaza, but Rob-May’s headquarters survived.

Previous May Co. installations had begun with a site visit in which I had learned about each department’s business procedures and priorities. TSI then presented a formal proposal for the base system and any custom code that I thought was needed. Only after the system had been delivered and installed did we provide training, and it always took place at the company’s location.

At some point in 1998 a group of people from Rob-May visited TSI’s office for orientation and training. Those sessions were also attended by people who would be involved with the installation at Meier & Frank (described here). Robert Myers, with whom we worked in the AdDept installation in the advertising department of the Foley’s division (described here), also was there to provide the perspective of a user of the system.

I found several photos that I snapped on the occasion of their visit as well as a dozen or so that I took in California. I also found text files containing notes from 1999-2003 that helped me remember some of the details of the installation and other happenings in my trips to southern California.

Rob-May’s training visit at TSI: The training sessions were held in what was ordinarily my office. All of my stuff was moved out. Everyone sat around tables, one of which I ordinarily used for a desk. Training booklets were provided for everyone. The photo to the lett was of one of the first sessions, in which Sandy Sant’Angelo (pink shirt on the right) showed the visitors how to sign on to the AS/400 and how the AdDept screens basically worked. Yes, we were still using “green screens”. We occasionally fielded complaints about them, but seldom from the people who actually used them.

This image has an empty alt attribute; its file name is MF_Table-1024x679.jpg

The photo on the right was taken after one of the training days in Enfield. On the last evening we all went to the Mill on the River restaurant, but I think that this photo might have been taken at a different place.

Robert Myers was seated next to me. In the photo he is on the far right. The other two people on his side of the table were Rusty Hansen1, the Planning Manager in the Rob-May advertising department and Beverly Curtis-Frethy2, the Controller. Across from Rusty was Doug Pease, TSI’s VP of Marketing. I don’t recall the name of the fellow across from Beverly. He might have been in charge of the department’s network. The other three people in the photo were from M&F.


Rusty Hansen was our primary liaison with Rob-May in the critical first few years.

The installation trip: The first of many enjoyable trips to Rob-May occurred a few weeks after the training session in Enfield. Doug and I flew to Los Angeles. from Hartford. We probably changed planes in Chicago. In those days I liked to fly on American Airlines because I could get frequent flyer miles both from the airline and from Avis for rental cars.

On those early trips I usually stayed at the Beverly Garland Holiday Inn3 in the Studio City neighborhood of North Hollywood, but I am pretty certain that Doug and I were advised to stay at the Sheraton in Studio City on the first trip to set up the AdDept system. I found a photo that I took of its entrnce

Robert was also present for at least part of this to provide another user’s perspective and to assist where he could. .

Rob-May treated us to meals with key employees more than once on that first trip and at least once on every subsequent trip. The smiling guy on the right across from Beverly (red coat) was Mario, the Direct Mail Manager. His last name was nowhere in my notes.

The main purpose of the visit was to install the AdDept software in the AS/400 that IBM had delivered. I did all of that myself. The secondary purpose was to make sure that a regimen had been set up whereby the tables that the system needed—newspapers and other vendors, selling departments, the organizational structure for the merchandise, employees, etc. I also needed to show Rusty how to set up user profiles both for the AS/400 and for AdDept and how to deal with the printers and errors reported by the system. Finally Doug and I needed to talk to the managers of the various areas of the advertising department to try to discover special needs and any procedures that were unique to Rob-May. For example, invoices from the Los Angeles Times were recorded in a general ledger account that was different from the one used for all of the other newspapers.

Beverly, Karen, and Robert at Karen’s favorite restaurant in Beverly Hills. Where was Doug?

Finally, and perhaps, most importantly, we got to meet Karen Jones, the Advertising Director. She provided us with insight as to the department’s highest priorities. Karen and I hit it off very well right from the start. She was (unduly) impressed by an analogy that I made: “Memory is to disk as electricity is to magnetism. If you lose power, the system loses what is in memory but retains what is stored magnetically on the disk.”

In retrospect this does not seem like a great pickup line to me, but she definitely became enamored of me and treated me royally whenever I visited Rob-May. I once casually mentioned to some employees at Rob-May that “Karen Jones loves me.” Everyone agreed. I did not think that we made good headway in the first year or two, but Karen always seemed to think that I could do anything.

Sonia.

My goal from the first trip was for the software for one of the media (newspaper, direct mail, or broadcast) produce something useful. It was very important that the system not be regarded as on that they fed a lot of information but got little in return.

As I usually did, I concentrated on printing a schedule for their newspaper advertising and the faxing to some papers of a set of insertion orders. To that end I worked closely with Sonia Ban. I think that there was still work needed on the schedule when I left, but we did manage to send some faxed insertion orders to newspapers, and they were impressed by that.


My home for the week.
View from the courtyard of the BG Hotel.

The new system: For various reasons the people in the IT Department of the May Co. decided that Rob-May’s system should be upgraded in 1999. The original system had been purchased from and installed by IBM. The new system was a model 270, and it was purchased from Savoir Technology Group, a company that was authorized to sell IBM midrange systems. I flew out to Robinsons-May to complete the process by installing the AdDept software on the 270 and migrating the data.

I still have the notes that I sent back to TSI about this trip. At the time American Airlines had a direct flight from Bradley International to LAX. I flew out on a Sunday morning and arrived early enough (gaining three hours) that I could pick up my rental car at Avis, drive to Malibu, the home of my icon, Jim Rockford, and spend some time at the beach.

I went to Topanga State Beach, which is in Malibu. It was pretty nice but cool. I don’t think that it even reached 80 degrees today, and there was a fairly strong breeze from the north. I made a little camp. I lay on my beach towel, listened to my CD’s, finished my Ethan Coen book4, and watched the surfers and the rest of the California scenery. I took a long walk all the way up and down the beach. I got a lot of sun. I think I am as dark now as my last day in Hawaii5. If I had stayed any longer, I would have been sunburned.

I think this was the first time since Hawaii that I have just goofed off during the day for more than an hour.

Incidentally, Malibu is where Jim Rockford parked his trailer on the beach. The Rockford Files is by far my favorite TV show ever. I looked for the trailer, but I didn’t find it6.

Valley Village Park is the green area in the middle. NoHo West is the new name of Laurel Plaza. I usually drove on the 101. The exit went right into Rob-May’s parking lot.

What I discovered on Monday did not meet my expectations. I had started the day at dawn by driving my rental car from the Beverly Garland Hotel to the park that was halfway to Rob-May to get my five mile run in. Then I returned to the hotel, showered, got dressed, ate breakfast, and drove to Rob-May. The following excerpt provides a glimpse into what it was like to be a cowboy coder at the turn of the century.

I expected the system to be set up and the TCP/IP connection established. I figured that I would install AdDept and BASIC. I would also migrate the user profiles and the data libraries from the old box. Instead, I found that the system was still in the box. I had to set it up using the instructions in the box. This went OK. However, when I got to the point at which I had to do a system save, it balked and said that QGPL and QUSRSYS were not installed. I had Rusty look through his boxes to see if he had system software. He did. I spent many hours installing the operating system and PTF’s. I kicked off the system save just before I left.

I don’t suppose there is any great harm. Everyone will have to use the old system tomorrow. Their connectivity consultant is coming in tomorrow. I hope he will be able to tell me how to do the TCP/IP connection.

Keep in mind that I was not (and am not) an engineer. Far from it. I am not good at this type of thing. I am good at designing systems and writing code. Things were still FUBB on Wednesday evening, when I wrote the following.

The problems we had here were cabling. They decided to run the new system on Ethernet rather than Token Ring, which meant that they had to change the hub into which they were plugged. The IT guy had no empty sockets. He unplugged something he thought was unimportant. It brought down the e-mail system. Before he found this out he was out putting out a fire somewhere else. People had a hard time chasing him down.

I don’t know if I got blamed by anyone for the company’s lack of email that day, but it would not surprise me. The dispatch I sent on Friday at least contained some good news.

Yesterday went much better. Their new system is now almost completely functional. I still spent most of the time putting out small fires. I ran CMPPFM last night for every member of QBASSRC to see if I can find any more changes that the black box was missing. Robinson’s new system is incredibly fast. Reports that took over half an hour run in one minute.

I figured out how to copy the system directory entries over to the new box. I had to copy a bunch of files from QUSRSYS that start with QAOKP.

I copied ADDEPT, QGPL, and QUSRSYS from the old machine to the new one and named them ADDEPTOLD, OLDQGPL, and OLDQUSRSYS. Last night I ran the source comparison program on QBASSRC in ADDEPT. I printed out the differences and was surprised at how many there were. I then realized that the old box was a week ahead of the 150 at TSI. I thought for sure that I checked this. I created a change library but there was no time to install it. I will have to do it after hours. This cut down on the number of differences, but there is still be a pretty good number. There must be a flaw in my updating routine.

By Thursday evening Rob-May had successfully used the system for one full day. I left fairly confident that the people in TSI’s office could deal with any remaining glitches. However, one of the last notes that I sent back to the office was prescient.

These guys need a lot of training. Most of them do not know what an error is and what to do about it. Rusty just kind of lets them go on their own, even the ones that he works with.

I flew back on Friday. It was an excruciating experience. Seven and a half hours after I left the hotel I was still in LAX! I wrote the following when we had finally boarded.

LAX, which is my least favorite airport in the country, was playing some kind of shrieking sound over the intercom the last 20 minutes that we were there. I was afraid I would miss an announcement, so I had put my CD player and headphones away. A couple to my left has not one but two babies. They paid for two tickets, but were using two rows! After they made us get off7, the situation became so ridiculous that I took it easier. This lasted until about ten minutes ago when the stewardess whacked my elbow, which was not sticking out at all. At the time it was about 40 degrees in the cabin. After takeoff it went up to about 90. Now it is dropping again.


The new team: The turn of the century brought a lot of changeover among the employees at Rob-May with whom TSI dealt. My notes said that when I came to install the new box, Karen Elmo had been replaced by Heidi Houghton. I have a vague recollection of Karen Elmo, but none of Heidi. The notes also report that I worked with the Co-op Coordinator, Doyle O’Dell, who asked for a report of committed co-op v. actual. I was able to show report #DM594 to him. I took a photo of him; he evidently was happy with the report.

Mary Ng at Rob-May.

The biggest changes happened in 2000. Rusty Hansen was replaced by Mary Ng8, and Beverly Curtis Fethy’s replacement was Steve Ornee9. Mary was the new liaison with TSI, and we worked closely together for several years. Chad Sesser’s title was Newspaper Analyst. He reported to Karen Jones.

The notes that I have from the three-day trip in October of 2000 show that Mary was very direct about what she wanted from AdDept.

Direct mail was on the menu for lunch in the Rob-May cafeteria with (I think) Kyle Levine11, Mary, and Dan Rothbauer12, the Direct Mail Manager.

Mary said that their objectives are to do all of direct mail on AdDept, to pay all invoices on AdDept and to upload them to CAPS10, to use AdDept for closing, and to use AdDept for planning. This was way too much to cover in three days. Even with three days I was barely able to gather enough information to put together a game plan.

They wanted to know which division they should visit if they wanted to see how to use AdDept for direct mail. I recommended Kaufmann’s. Lord & Taylor uses AdDept extensively for direct mail, but they do not use our cost accounting for closing of direct mail.

Chad is on the left. I don’t remember the fellow with whom he was talking.

I also spent quite a bit of time with Chad Sesser. He told us that he had already downloaded sales from the mainframe at least once. He did not remember how he had done it, but he knew the name of the person in their Information Services department who had helped him.

On the last evening Karen Jones again sprang for supper at the restaurant in Beverly Hills. I might have gotten lost crossing the hills; I distinctly remember that I did on one occasion.

At the restaurant I noticed a blonde woman who was much more buxom than Ellie Mae Clampett. She was sitting with some other people a few tables away from the group from Rob-May. The most astounding thing to me was that for all of the time that we were there—which must have been at least ninety minutes—she was talking on her cellphone while paying scant attention to anyone at her table.

I should mention that I did not have a cellphone in 2003, and the people who talked on them loudly in airports bothered me a lot. I could not imagine anyone answering a phone in a restaurant, much less talking for an extended period. It seemed unimaginably rude to me, but I realized that I was partaking of a totally different culture in Milburn Drysdale’s town.


The projects: TSI did quite a bit of custom coding for Robinsons-May. We also helped them to integrate the data from M&F when the responsibility for managing the stores previously in that division was transferred to North Hollywood. Fortunately, their 270 was easily up to this task. I did not need to travel to California to install another upgrade.

Rob-May had two types of ads that I had never heard of: TMC’s and PWP’s. TMC stands for “total market coverage”. On certain days of the week or on special occasions some newspapers delivered a greatly reduced version of their paper to all households in an area that did not subscribe to the paper. If the same ad (ROP or insert) was run in the regular edition and this reduced edition, it had a higher rate because more eyeballs would see it.

I don’t remember what a PWP was, but I think that the concept was similar. Newspapers were desperate to retain the same level of revenue even as their circulations shrank in the twenty-first century.

My first visit to Rob-May after Mary Ng’s arrival triggered a very large number of fixes (changed for free) and requests for changes (quoted). This was definitely good news in that they were finally interested in taking full advantage of the system. On the other hand, it meant more pressure on the programming staff to produce what Rob-May—and other clients—needed in a reasonable amount of time.

The programming that was most valuable from TSI’s perspective was constructing an interface with another system. In some cases AdDept was the sending system; in others it was the receiver. Our expense invoice entry and claims system had the ability to feed the corresponding corporate accounting system (CAPS). Several changes had to be made to this module to accommodate peculiarities at Rob-May.

Our sales analysis and productivity programs used tables that were fed by the corporate sales system. Most of the May Co. divisions used the same ad agency (Doner) for broadcast. The agency sent a file to Rob-May. The departmental employees ran a program that TSI provided to update the broadcast section of the schedule in AdDept.

The last item on my notes from the trip in April of 2003 reported:

I spent ten minutes talking with Chad, Bobby McIntosh14, and the QPS programmer about the interface that they want to create. Nothing came of it.

Chad said that he will write up the details of what they would like the QPS interface to do. We can then quote it. The problem that he could not handle with query is how to treat sections. QPS has a job for each page, but the media schedule is on the book.

Bobby McIntosh was the Manager of Advertising Systems. The advertising production area used the Quark Publishing System (QPS) to manage the workflow of some of their direct mail catalogs and newspaper ads. I do not remember this meeting described above at all. If we were to undertake an interface like this, it would have been a massive job that would have taken at least several months. Therefore, I don’t think that we ever got to the point quoting construction of the interface.


My adventures in southern California: North Hollywood is best known for the unbelievable attempted bank robbery in 1997 at a Bank of America branch that was only a mile or so north of the Rob-May headquarters. The two robbers wore home-made body armor and bore much better weapons than the police. Foiled in their escape, they shot it out with the lawmen for an extended period of time. They were eventually killed, but not before the two sides discharged roughly two thousand bullets. Twelve police officers and eight civilians were wounded, but no one besides the perpetrators died.

A slightly fictionalized made-for-TV movie about the incident aired in 2003. No one from Rob-May ever mentioned it in my presence. If I had not seen the movie, I probably never would have known about it.

The LAPD Museum has an exhibit that features the perpetrators, their weapons, and their body armor. Because it was not opened until 2007, I never went there. By then Macy’s had taken over the May Co., and Rob-May was no longer a client.

OK, there was a little fire damage.

The most interesting thing that I saw in North Hollywood was an apartment building that had a large sign on it offering “Free Rent”. I took a photo of it from my rental car.

At the time TSI was actively looking for a new site for our office. I sent an email to Denise Bessette, who ran the office when I was out of town, about it. I suggested that we move our operation to North Hollywood in order to take advantage of this opportunity. If we had rented a handful of apartments, we would have had plenty of room to grow our business. For some reason she did not urge me to sign a $0 lease while I was in the vicinity.

One evening I decided to take a drive into Hollywood itself. I arrived at the corner of North Highland Ave. and Hollywood Blvd., where I saw a throng of people around the Ripley’s Believe it or not. The whole neighborhood was incredibly touristy. I did not even park my car. I drove back to my hotel in Studio City as quickly as I could.

For my last few trips to Rob-May I abandoned Beverly Garland and drove a little farther north to stay at a Hampton Inn. I did this for a couple of reasons. I had found that I liked Hampton Inns better than other hotels. I had an American Express card that I used for stays at Hamptons and other Hilton hotels. This paid off in free stays, which I used either for business trips or vacations.

I also was not enamored with the neighborhood in Studio City. I only found one place to run, and it was a little boring. I had to make several circuits of the path in the park, and the scenery no longer interested me. The biggest factor, however, was food. I had not been able to find many places that served tasty and healthy meals and also could be used—takeout or sit down—comfortably by a lone diner. My notes of July 1999 reported:

I had trouble finding affordable edible food in California. I ended up eating twice at Koo Koo Roo15, which has vegetables. The problem is that the only main courses they serve are rotisserie chicken and ¼ pound of turkey. I had the chicken both times.

The closest Hampton Inn was in Santa Clarita. The drive did not bother me much. The inconvenience was more than offset by the free breakfasts and occasional free snack in the evening. It was close to a large suburban shopping center. I don’t remember exactly where I ate, but I had no problem finding what suitable restaurants.

The best aspect of staying in Santa Clarita was that I discovered a really interesting trail in Quigley Canyon, a park that is very close to Gene Autry’s Melody Ranch. I really enjoyed running through the hills in the park. I had to climb a fairly steep incline to reach the trail that ran along a ridge. A sign at the trailhead warned about snakes and mountain lions, but I never encountered any wildlife while I was running.


Departure: I almost always flew back to Connecticut on a red-eye flight. I would leave LAX at 9 p.m. or later, arrive somewhere on the eastern side of the Mississippi at dawn or earlier, change planes, and then catch another flight to Bradley.

I always filled the gas tank before returning the car to Avis. I once made the mistake of stopping at a gas station in south-central L.A., an area that was close enough to LAX that the gas gauge would appear full. It was past sundown, and the place was not well lit. This was one of the very few times in my life that I felt afraid. I had lived for over three years in inner-city Detroit, but this area was fairly notorious because of the Rodney King incident.

What was scary about this gas station was that a few young men were walking around and approaching customers who were pumping gas. One came up to me and asked me something. I made some kind of noncommittal reply. He was annoyed with my response, but he did not do anything. I got back in my car and returned to the highway with deliberate speed.

On another occasion Karen Jones took me and a group of employees to a restaurant that was in either Burbank or Pasadena. I had my car, and after supper someone outlined for me how to get to LAX. Everyone assured me that I had plenty of time to make my flight. I probably did, but I made a wrong turn somewhere, and by the time that I arrived at the Avis counter, I was really pressed for time.

This was the first and only time that it took a long time to check my car back in at an Avis location. In every other instance no more than five minutes was required. However, this time there was a long line that moved very slowly. By the time that I returned the car and boarded the Avis bus, there was little chance of arriving at the gate in time for my overnight flight on Delta16 to Hartford by way of Atlanta.

When the bus let me off at the terminal I rushed up to the Delta desk with my suitcase. The agent confirmed that I had missed my flight. She then calmly booked me on a different flight that went to Bradley through Cincinnati and was leaving within the hour. I was not charged anything extra for this change, and I arrived in Connecticut less than a half hour later than my scheduled arrival time.

Epilogue: Rob-May used the AdDept system until 2005 or 2006 after the May Co. was purchased by Macy’s. On August 30, 2005, administration of the stores was transferred to another AdDept client, Macy’s West in San Francisco. The history of the installation at Macy’s West is detailed here.

The store in North Hollywood was turned into a Macy’s. It and its oversized parking lot stayed open until October of 2016. The entire acreage is still, six years later, in the process of being transformed into a mixed-use area renamed NoHo West. The retail part of the project evidently suffered from the emergence of the pandemic. A directory map can be found here.

An aerial photo of NoHo West taken in 2019, at which time it was described as “fully framed”.

1. Rusty Hansen does not seem to have an Internet presence in 2022, but I did receive a phone call from him once after he left Rob-May in 2000. Jim Lowe, TSI’s marketing person, and I later talked with him briefly at his new place of employment, Wherehouse Music in Torrance. That experience has been recounted here.

2. Beverly Curtis-Frethy left Rob-May in December of 1999. Her LinkedIn page is here.

3. Beverly Garland was an actress in Hollywood. Among many other roles she was Fred McMurray’s wife in the last few years of My Three Sons. She died in 2008, but her hotel still is thriving in 2022, and it is still a Holiday Inn.

4. I don’t remember reading a book by Ethan Coen. Since my notes did not mention the name or describe the plot, it might have been Gates of Eden, a book of short stories published in 1998.

5. This refers to the trip that Sue, Doug, and I took in 1995 to pitch the AdDept system to Liberty House. The description begins here and continues in two subsequent blog entries.

6. I am almost positive that I have seen every episode of The Rockford Files several times. The only bad one is the first one, the pilot, which had a different Rocky and was too much like Philip Marlow. Rockford lived at 29 Cove Road in Paradise Cove in Malibu. The beach that I went to was approximately twelve miles east of Paradise Cove.

At some point on one of my trips I took a late evening photo of the Los Angeles River. It is posted at the right. The river bed was concrete, and the trickle of water that it contained was laughable.

I could swear that back in the seventies I saw on an episode of The Rockford Files a chase scene that took place in the river itself. However, when I watched all of the episodes again (and again) in the twenty-first century first on MyTV and then on Peacock, I never saw such a scene. The show was recently removed from Peacock. I may never know for certain about that chase scene.

7. There was some kind of hydraulic leak that forced us to leave our scheduled plane and board a different one.

Mary Ng.

8. Mary Ng worked at Rob-May until 2005. Her Linked-In page is here.

9. Steve Ornee was employed at Rob-May until 2006. His Linked-In page is here.

10. CAPS was the mainframe corporate accounting system. It was located in St. Louis.

Kyle.

11. Kyle Levine worked at Rob-May until 2004. His LinkedIn page is here.

Dan.

12. Dan Rothbauer did not leave Rob-May until 2006. His LinkedIn page is here.

13. I still hate cellphones in 2022. While sitting in my right front pants pocket my first “smart phone” ordered pizzas on its own. I did not mourn when it somehow got fried by European current. That story, and a lot more is detailed here. Its replacement has not ordered pizza yet, but it did turn itself on while resting in the right front pocket of my blue jeans. I was playing bridge at the time.

Bobby.

14. Bobby McIntosh stayed at Rob-May until 2006. His LinkedIn page is here.

15. Koo Koo Roo went out of business in 2014.

16. By this time I flew on Delta whenever I could. Delta had the most connections to places that I often visited, and I had a Delta American Express card on which I accumulated thousands of valuable miles that I used for vacations.

1988-2014 TSI: AdDept: System Structure

A complicated system. Continue reading

People who have not worked in retail advertising will probably have trouble understanding this entry. Nevertheless, because the AdDept system was the focus of my life for so many years, I feel obliged to document as much of its structure as I can remember. It did not occur to me that I might want to undertake such a task until very recently. Consequently, when I closed down TSI in 2014 I discarded almost all of the system’s documentation. The few computer files that I have subsequently found are mostly PageMaker documents. I don’t have that software on my computer, and the files are too large for the services that will convert them to pdf files online. So, I must rely on my memory, which is not as reliable as it once was.

AdDept was designed for and implemented in OS/400, the operating system of the AS/400 and its follow-on hardware. Some of the important and unique features of this operating system are described here. Every line of code that we wrote in 1988 still worked in 2014, and I have no reason to expect the code to stop working any time soon.

All programs were originally written in BASIC. Around the turn of the century IBM stopped supporting BASIC, but TSI was authorized to install the product (a compiler, and interpreters of both BASIC commands and BASIC procedures) on any system that use our software. This only caused one major problem, which is documented here. However, Denise Bessette did not like this arrangement and undertook to convert the programs to ILE RPG. I never appreciated the value of that idea, and I never took the time to learn that language, which is supported on no other system.

All data tables and the major programs in AdDept began with the letter D, which stood for department. This was for TSI’s benefit. The ad agency system used a similar structure, but no files or programs began with D. The second letter in AdDept tables was usually A, I, M, or P, which stood for accounting, (loan room) inventory, media, and production. Programs that were used for cleanup, copying, and other miscellaneous tasks began with DX.

All AdDept programs were stored in the same library1. It was usually named TSIPROG. The data was in a library named TSIDATA. A few clients had additional data libraries for additional companies. At these installations we created a separate library called COMMON or TSIDATACOM to hold the tables that were used for both companies. For example, both companies probably used the same ad types and expense classes (major media). The tables used by both were moved from TSIDATA to the common library. A new data library was created for the data files for the second company. In the beginning it contained empty copies of all of the remaining files in TSIDATA.

No two instances of AdDept were the same, but each had the same TSIPROG library. The settings for each installation were designated in two ways: 1) A set of empty one-byte files, the existence of which activated certain features; 2) a file called DASPECS that contained a very large number of switches, descriptions, and system values. The program to maintain the system values was not on a menu, and users were not allowed to run it.

Everyone needed a user ID to sign on to the system. Those connecting through a network could have any number of simultaneous sessions open.

AdDept’s user table, which was also on no menu and could be run only by the AdDept liaison, limited the programs to which the user had access. If the same employee worked with two different data libraries, a second user ID was required. The two user ID’s would have different library lists.This arrangement may sound cumbersome to people who are used to managing hundreds or even thousands of nested folders, but it did not seem strange to the users of a multi-user system. Furthermore, it was absolutely critical that changes not be made on files in the wrong library. All TSI menus displayed the name of the data library to help eliminate confusion.

The retail calendar was accommodated by the season table. The key was a three-digit number. The first two digits were the fiscal year. The third digit was 0, 1, or 2. 0 meant that a standard twelve-month calendar was used. 1 and 2 were used for 4-5-4 retail calendars, which are described here. This table contained the name of the season, the starting date, and the number of weeks in the season.

Ads were classified by three separate codes:

  1. The one-digit insertion code determined which set of screens was used for data entry. This was a fixed set, but more codes could be added for additional media.
  2. The one-digit expense class identified how the ads were categorized for accounting purposes. Later a sub-class code (blank default) was added for one client.
  3. The two-digit ad type was specified when an ad was created. This table held the insertion code and expense class. It also had a binary field to identify whether color charges were applicable.

Media vehicles, such as newspapers, magazines, and broadcast stations and networks (called pubs in AdDept), were identified by a five character codes combined with a two-digit number (usually 0). For newspapers at least one number was reserved for inserts (usually 10). The users specified the days on which the paper published, whether it was AM, PM, or a combo2 and the paper’s depth (maximum number of inches vertically on a page). For direct mail the pubs were usually geographic markets.

Stores could be identified by a five-digit number.

Every pub had a list of stores that were associated with it. There was also a date-sensitive pub-store allocation table that contained the percentages allocated to each store associated with the pub. The key to this table included an effective date. Less than half the AdDept retailers allocated costs to stores, but the ability to do so was very important to those that did.

AdDept users almost never paid the published rates.

Rates for ROP and inserts were date-sensitive. For ROP separate rates could be entered for black-and-white and several different color choices. There were also tables for linage-based discounts and premiums for things like special positioning such as “back of main”—the last page on the first section of a paper. For inserts a table of usual quantities (thousands of copies) could be created, with rates for each.

The system needed to be able to find the right rate to apply whenever an ad was changed or moved. Costs could also be recalculated en masse when a new contract had been negotiated. These were attractive features.

Probably the best idea that I had when designing the system was to allow the definition of pub groups (identified by five-character codes) to specify sets of pubs in which the same ads often ran. Clients could have hundreds of these or none. When a new ad was created, one pub group could be specified. A schedule could automatically be created with all the pubs in the group.

The hierarchy of participating merchants had five levels in AdDept. The lowest (most detailed) was the department. The system called the other four ADMGP, GRPVP, SENVP, and GRSEN to match Macy’s East’s designations. Most retailers had only two: DMM’s and GMM’s. The May company used “CCN numbers” to group related departments. For each level each client determined the descriptions used on screens and reports.

Employees were identified by three-character codes. Employees could be assigned to production jobs. So, an employee could see a list of all of his open assignments.

The traffic system allowed specification of a code for each production job that determined the job’s production schedule. So, black-and-white ROP ads might have a three-week production schedule with eight steps. The number of days for each step could be specified. Then the system would count backwards from the release date to build a schedule of due dates that accounted for weekends and holidays. The completion dates of each could also be entered (an X meant “today”).

This seemed important to several clients, and we built it precisely the way it was described to us. However, the production employees did not like it. For one thing, most of them used Macs for working on the ads, and they found a text-based system clumsy. I don’t honestly think that they would have liked it much better with a GUI (graphical user interface) as the front end.


The accounting tables were similar to those in the GrandAd System (described here) or any other system. They were designed to be consistent with whatever system was used by the accounting department, but AdDept users did not need to memorize the very long codes that were common in those systems. In AdDept the main entity was the sub-account, which was identified by a five-character code. One corporate G/L account was specified for each sub-account.

The vendor table also had a five-character key. The corporate vendor number was specified there. This table was used for merchandise, media, production, and other vendors.

Categories of production costs were identified by three-digit codes, just as in the GrandAd system.

The Ad Files

The system had one major header file for ads of all types and a number of lists that were associated with it. The ads file3 was identified by the season, a five-digit ad number (usually generated by the system using client-specific rules), and a one character version code (usually blank). The ad number could either be entered or generated by the system. Data entry began with the specification of the run date and ad type. A large amount of information was deduced from those two values. The headline and size4 of the ad were then entered on the header screen, which also contained many other fields.

The second step for ads of all types was the media schedule. If the pub group was accurate, nothing had to be entered here for ROP and inserts. For direct mail the quantities by market were entered.

The third step was the list of participants with percentages and co-op commitments.

Expected production costs could either be entered as one lump sum or detailed by category.

Audit Trails

History records were created for any activity that affected planned, committed, or actual costs or income. Reports and screens were written for viewing them. A few custom reports were also written for clients.

Planning

New ads were ordinarily assigned a status of P, which stood for “planned”. When the plan was completely approved, a program could be run to change the status of all status P ads to A (active). At the same time records of the detail of the costs of those ads at that time were recorded in separate files named DAPLAN (by department or group) and DAPLANST (by store).

Changes could still be made to any aspect of any ad, of course. Those values were considered “committed”. The actual costs were based on the measurements and the invoices from the media and production vendors. Actual co-op was based on the “claims” that had been processed.

In subsequent years several AdDept users let the system build the entire schedule based on the previous year. Thus season 951 could be built based on the ads run in 941. This process was called “anniversarying”.

Cost Accounting

What I called “cost accounting” was commonly called BI later.

Most advertising departments were keenly interested in comparing planned, committed, and actual costs by merchant or by store. AdDept had programs that would create detailed records every night by store and/or merchant for all ads in the current season. The merchant records were stored in DACOMMD (committed) and DAPANDL (actual). The records by store were in DACMDST and DAACTST.

Numerous reports were written to allow comparison of planned, committed, and actual costs and income (from co-op). Some users also queried these files on a regular basis using IBM’s Query/400 product.

Interfaces

Broadcast ads could be fed into the system from Doner, the May Company’s ad agency, and from Media Management + files created either internally or by an agency. There may have been one or two others of these.

A couple of clients used ad agencies for their newspaper ads. TSI constructed interfaces to receive the ad schedules from the papers.

Several interfaces were created to send files to feed corporate Accounts Payable and General Ledger systems.

Sales at the department level could be downloaded from the mainframe. Customized reports helped gauge the effectiveness of ads in comparison with the costs.

Backup

It was easy to schedule a backup nightly and to schedule the cost accounting programs to start when the backup was done. The backup would not save files that had record locks. Any time that a record was read from a program that could update that file (as often occurred), the record was locked to prevent one user from accidentally overwriting the work of another. It was sometimes difficult to persuade users either to make sure that everyone had signed off every night or to shut down the interactive subsystem before backing up and restarting it later.

TSI recognized this problem and warned the users about the possibility of lost data if files were not backed up routinely and correctly. We even offered (for a modest fee) to check their backups every day and notify them by telephone if the backup for the previous nights did not complete correctly. Only one client took advantage of this service.

The failure to check backups resulted in one ugly mess that was described here.

Cleanup

By the standards of the day the cost accounting and history files often became extremely large. A menu of programs that permanently deleted records from old seasons was provided.

Other Modules

The Loan Room inventory system was successfully used by Macy’s East for approximately twenty years.

A Photo Shoots system was also designed for Macy’s East, but it was never implemented. I don’t remember why they lost interest in managing the activities of their studio. The location of the studio in Newark may have been a factor.

Many modules were developed for Belk. One that I remember calculated the store’s use tax liability for direct mail pieces for each jurisdiction.

Saks Inc. in 1999 wanted TSI to design a very complicated system for collecting data from the systems of each of its divisions and, eventually, to produce reports that compared divisions. I was very happy that nothing came of this idea.

A special module was created for Radio Shack to manage its advertisements in magazines.

I suspect that there must have been a dozen more of these modules that I cannot recall. We delivered hundreds of custom programs over the years and quoted a similar number that were never approved.


AdDept was a fabulous system. Because it contained so many features, it was somewhat difficult to demo. The screens and most of the reports were ugly. Nevertheless, as soon as prospective clients understood its potential, it was easy to sell to anyone with a budget.


Unfortunately by the time of the Bush-era Great Recession in 2008, Tarot card readings for most major retailers—especially the ones that did a lot of advertising—began with the thirteenth trump card: Death.


1. “Libraries” were a type of object on the AS/400. They were places to store other objects in the same way that folders or directories are used on PC’s. However, it was not possible to build a “tree” of libraries. All other libraries resided in the QUSR library.

2. Yes, a few papers still published two editions per day in the nineties.

3. As far as the OS/400 was concerned, DMADS, the ads file, and the files that contained all of the lists were equivalent to the tables. However, TSI’s organization and documentation drew a useful distinction between the relatively stable tables that were defined at the beginning of the installation and the much more volatile ad files and transaction files.

4. The size for ROP ads was entered in columns and inches. A full-page broadsheet ad was entered as 6×21. The program knew to adjust the inches to match the paper’s depth. The size for inserts was entered in terms of thousands of copies. The size for broadcast ads was the length of the spot in seconds, usually 15 or 30.