Solved

Losing Excel attachments. Ouch!

Posted on 2004-04-19
17
205 Views
Last Modified: 2013-12-18
I have a database that is used as a document repository. Word and Excel documents are attached, one per Notes record, in a RT field called Subject.

The Subject field is hidden when the document is in edit mode unless the user has "checked out" the Notes document. The check-out process prompts them to save the attachment to their hard drive. The check-in process warns them it will clear ALL attachments in the field, and then prompts them for the updated document to attach. It then clears the field and attaches the updated document.

This database has been working well for a bit over three years, and is up to about 5.5 GB in size.

Friday, about 4:30, I got an e-mail saying there are several documents in the database that have Excel spreadsheets attached, but that the spreadsheets for these documents have turned up empty. There doesn't seem to be any consistency or pattern to which documents have been affected. One was last checked in on Feb. 17 of this year; another was last checked in on May 7 of last year. I'm told there are other documents, too, but haven't been pointed toward any other examples.

In each case, in the fields tab of the document properties, the $FILE field shows the object length to be 2 bytes. And each of these documents has only one $FILE field. This tells me that whatever data may have been there is lost forever.

My concern is, how did it get lost, and what can I do to stop it from happening again?

We're running 5.04a and 5.08 and the database is only being accessed from Notes clients.

Any suggestions for what I should be looking for would be most appreciated.

-- b.r.t.
0
Comment
Question by:BarryTice
  • 6
  • 6
  • 4
  • +1
17 Comments
 
LVL 19

Assisted Solution

by:RanjeetRain
RanjeetRain earned 150 total points
ID: 10859859
My recommendations:

1) Keep the DB size under control (even if it is below the permissible limits)
2) Check for any agent running without your knowledge.
3) Do frequent backups (just in case)

Things to do as of now

1) Try nfixing the DB
2) Take frequent backups
3) Create/enable some kind of logging mechanism to help you figure out what's going on.
0
 
LVL 24

Accepted Solution

by:
HemanthaKumar earned 250 total points
ID: 10859981
Eventhough R5 supports upt 64 GB, you have to make sure that the disk space on the server has considerable swap/temp area for lotus domino operation.

Compact the database and see if that improves !

Also make sure that any new code changes did affect the way the attachments are retreived or saved to the file. For eg., when you attach the files thru backend.. but it is not reflected on the uidoc and user tries to save the document.. it will save and overried any backend changes. I strongly believe it is the way the document is saved causing this problem

~Hemanth
0
 
LVL 19

Expert Comment

by:RanjeetRain
ID: 10860009
Early in the morning Hemantha! What's up?
0
 
LVL 24

Expert Comment

by:HemanthaKumar
ID: 10860039
It is not early here buddy.. about 10:30 AM

Nothing much just keeping afloat ..
0
 
LVL 19

Expert Comment

by:RanjeetRain
ID: 10860051
10:30??? Where exactly are you located in the USA?
0
 
LVL 24

Expert Comment

by:HemanthaKumar
ID: 10860099
NC
0
 
LVL 19

Expert Comment

by:RanjeetRain
ID: 10860123
Hmmm okay. I thought you could be located in western part of the states. Not very good at geo anyways.

Anyways, I'm off now. Have a nice day!
0
 
LVL 7

Author Comment

by:BarryTice
ID: 10860199
Thanks for the suggestions.

The form that contains the Subject field hasn't been modified since January of this year.

I'm the only person who has ever done any design work in this database, and I haven't touched the check-in/check-out functions in well over a year (except, perhaps, to modify the list of e-mail recipients; that code has been removed from the code below) -- I'd actually guess closer to two years.

The check-in code follows:
==== BEGIN PASTE ====
Response := @If(Status = "Design";
      @Prompt([YESNO]; "Attach File and Check In?"; "This will remove all previous attachments. Do you wish to continue?");
      @Prompt([OKCANCELEDIT]; "Attach File and Check In?"; "This process will remove all previous attachments. Please give a brief description of what has changed in the " + Document_Type + " file:"; ""));

@If(Response = 0 & Status = "Design"; @Return(""); "");

@If(@Trim(Response) = ""; @Do(@Prompt([OK]; "Please Provide Information"; "You must provide a brief description of what has changed in the " + Document_Type + " file."); @Return("")); "");

MailResponse := @If(Status = "Design"; "."; ". -- " + @Trim(Response) + ")");

FileName := @Prompt([LOCALBROWSE]; "Select a document to check in"; "3");

@If(FileName = ""; @Prompt([OK]; "No File";"No File Selected"); "");
@If(FileName = ""; @Return(""); "");
ShortFileName := @RightBack(FileName; @Char(92));

SameName := @If(ShortFileName = @AttachmentNames; "0"; @Prompt([YESNO]; "Warning! Different File Name!"; "You have selected a file with a different name (" + ShortFileName + ") from the existing design document (" + @AttachmentNames + "). Cancel this check-in?"));

@If(SameName = "1"; @Return(""); "");

@Command([EditDocument]; "1");

FIELD LastCheckInDate := @Now;

@Command([EditGotoField]; "Subject");
@Command([EditSelectAll]);
@Command([EditClear]);

@Command([EditInsertFileAttachment]; FileName; "1");

FIELD CheckedOut := "No";
FIELD EditedBy := @Text(@Name([CN]; @UserName)) +" (Document was checked in on " +@Text(@Date(@Now)) + " at " + @Text(@Time(@Now)) + MailResponse + @NewLine + EditedBy;
@Command([ViewRefreshFields]);

REM "Some e-mail notifications happen here";

@PostedCommand([FileSave])
===== END PASTE =====

Note that the @Char(92) is a backslash, so you don't have to go looking that up.

-- b.r.t.
0
Better Security Awareness With Threat Intelligence

See how one of the leading financial services organizations uses Recorded Future as part of a holistic threat intelligence program to promote security awareness and proactively and efficiently identify threats.

 
LVL 31

Assisted Solution

by:qwaletee
qwaletee earned 100 total points
ID: 10861354
Did you examine the actual detached file for the problem docs?  Was teh detached file 2 bytes long?  Did it function in Excel?  Did it have a concistent file date?
0
 
LVL 7

Author Comment

by:BarryTice
ID: 10861763
qwaletee --

Thanks for checking in. The detached file is 2 bytes long when detached to my desktop. It shows a created date of June 29, 2003 and a modified date of August 7, 2002. (Go figure.) The Accessed date is today.

If I double-click it, it opens to a one-worksheet empty workbook in Excel.

-- b.r.t.
0
 
LVL 7

Author Comment

by:BarryTice
ID: 10863807
For what it's worth, the two bytes are 0D 0A -- return/linefeed.
0
 
LVL 19

Expert Comment

by:RanjeetRain
ID: 10866013
After your above code runs do you get your attachments back as originally attached? I mean to ask this corruption is due to code or it happens automatically for no seeming reason after sometime? If not due to disk based corruptions, I am sure something is working on your documents.
0
 
LVL 24

Expert Comment

by:HemanthaKumar
ID: 10869000
I believe they would have attached some temp file or something like that.. As you code asks to attach same file name.. I believe that has got something to do.
0
 
LVL 7

Author Comment

by:BarryTice
ID: 10869289
Here's the update.

I've created a view that sorts docs by attachment length. It seems nearly 500 documents are affected. So far in browsing through the documents, I've found two affected Word documents, and all the rest are Excel documents. 90+% of the attachments in this database are Word files, but it seems that 90+% of the affected files are Excel documents. And only about 85% of the Excel documents were affected.

I believe I've found a bit of a smoking gun, though. scrolling down through that view with the document properties showing, the first tab of the document properties shows that each of the affected documents was last modified by one of our corporate servers in India at about 5 a.m. Friday.

Grr.

I have a call in to our help desk, but they're going to have to rout it to our Notes group, and I don't know when they'll get back to me, or if they'll ever know what happened.

-- b.r.t.
0
 
LVL 7

Author Comment

by:BarryTice
ID: 11180366
I'm cleaning up old questions.

Nobody here provided me with any indication of what may have happened, but don't feel bad. Nobody in our corporate Notes administration group could tell me what happened, either.

For whatever reason, the server in India killed 500 attachments. Nobody knows why, nobody knows how, and nobody (except me) seems worried about it.

Thanks for the suggestions.

-- b.r.t.
0
 
LVL 19

Expert Comment

by:RanjeetRain
ID: 11181670
Barry,

I however feel bad that your attachments were killed apparently by the server kept in India. May I have your ISP name? I would like to speak to them.
0
 
LVL 7

Author Comment

by:BarryTice
ID: 11182942
?

It's a corporate-owned server for the company I work for. The company has offices in more than 30 countries, so I doubt it's the fault of the ISP. Somehow the Notes server just ran something I shouldn't have. In any case, as I'm a lowly developer in Alabama, I have no idea who provides the infrastructure for our international communications.

Thanks for the help, though.

-- b.r.t.
0

Featured Post

IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

Suggested Solutions

Title # Comments Views Activity
Recent Contacts - Lotus Notes 10 603
Lotus notes email code 2 113
Code for extraction to mkdir folder 5 34
ESXCLI upgrade command 1 26
You’ve got a lotus Domino web server, and you have been told that “leverage browser caching” is a must do. This means that we have to tell the browser everywhere in the web to use cache. In other words, we set (and send) an expiration date in the HT…
Problem "Can you help me recover my changes?  I double-clicked the attachment, made changes, and then hit Save before closing it.  But when I try to re-open it, my changes are missing!"    Solution This solution opens the Outlook Secure Temp Fold…
Excel styles will make formatting consistent and let you apply and change formatting faster. In this tutorial, you'll learn how to use Excel's built-in styles, how to modify styles, and how to create your own. You'll also learn how to use your custo…
This video explains how to create simple products associated to Magento configurable product and offers fast way of their generation with Store Manager for Magento tool.

760 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

19 Experts available now in Live!

Get 1:1 Help Now