Yikes! Severe Damage to DB - Menus Gone in Editor

Randy Engle (5/29/14 2:23PM)

Randy Engle (5/29/14 2:23 PM)

Cc: 'Joshua Fletcher' <JFletcher@...


Many thanks for the detailed plan of action.
I'll check out the VC_Framework

No, I don't have Rev Control software currently

That is likely to change soon.

Randy Engle
XC2 Software LLC

color><param>00000,0000,DDEE/param>------Original Message-----
From: 4d_tech-bounces@... [mailto:4d_tech-
bounces@... On Behalf Of Joshua Fletcher
Sent: Thursday, May 29, 2014 1:54 PM

/color><color><param>8826F,0000,8219/param>aa. ?=A0?Go to the last
backup and copy all code since then to that version
?=A0?=A0?(That's a lot of code and other items....!)
Because the Repair was unsuccessful, this is the only safe way to
IMO, but I'm biased given my background in support.

Are you using revision control software? It could really help here
even if
you've never used it. For example:

(note: in all cases make copies of everything! :)

1. Install the VC_Framework and VC_Forms components in a known good
copy of the database.
2. Launch it and export all the content. Methods and forms in this
case, but
you could also export the structure definition with minimal effort to
changes to tables and fields. You can export just about everything
else too
(lists, picture library, menus, users, etc.) but it takes some code.
The point is
to get everything out into text files so you can diff them.
3. Commit all that using your RC software (note: your local copy is
called the
"working copy").
4. Copy the bad database over the good database in the working copy;
meaning overwrite anything that conflicts. The RC software will
detect which files are changed even if they're binary.
5. Delete the "vc_data", "vc_forms", and "vc_source" folders (these
created by VC_Framework and VC_Forms in step 2).
6. Launch the bad app (VC_Framework and VC_Forms are already
7. Export all the content again.

Your RC software will be able to show you which methods and forms were
added, changed, or deleted as well as what was changed in each file via
diff'ing. For example if you open a commit dialog in most SVN clients
it will
show you a list of everything that's been changed. ?Use this
information to
"import" the changes into a known good copy.


There's even a fork of VC_Framework that supports method import, but I
haven't used it so I don't know for a fact would help you here:


I think the idea would be (continuing the steps above):

8. Overwrite the bad app with the good app.
9. Launch the app.
10. Lutz's import routine will detect the new and changed methods on
and import them into the database.

So you could at least automatically fix the methods.

Kind regards,


Josh Fletcher
Technical Account Manager
4D, Inc

P.S. if you're going to use SVN, also install VC_SVN:



Reply to this message

Summary created 5/29/14 at 7:36PM by Intellex Corporation

Comments welcome at: feedback@intellexcorp.com